Skip to content

Add Looker WASM plugin#2

Merged
daltoniam merged 3 commits into
mainfrom
add-looker-plugin
May 20, 2026
Merged

Add Looker WASM plugin#2
daltoniam merged 3 commits into
mainfrom
add-looker-plugin

Conversation

@daltoniam

Copy link
Copy Markdown
Owner

Summary

Initial Looker BI plugin for the daltoniam Switchboard marketplace — 23 tools across search, folders, Looks, dashboards, queries, SQL Runner, LookML models, connections, users, and scheduled plans.

  • Auth uses Looker's API3 client_id/client_secret login flow with a process-scoped token cache that auto-refreshes on 401.
  • All _run_* and _create_* tools clamp limit to a max of 5,000 rows (default 100) to prevent runaway responses.
  • Includes compaction specs for every read endpoint (none on result-returning tools so analytics rows pass through untouched).
  • Prebuilt dist/looker.wasm (~217 KB), manifest entry, and per-plugin README included.

Tools

Domain Tools
Search looker_search_content (entry point)
Folders looker_list_folders, looker_get_folder
Looks looker_list_looks, looker_get_look, looker_run_look
Dashboards looker_list_dashboards, looker_get_dashboard
Queries looker_run_inline_query (BI entry point), looker_run_query, looker_get_query, looker_create_query
SQL Runner looker_run_sql_query
Models looker_list_models, looker_get_model, looker_get_model_explore
Connections looker_list_connections, looker_get_connection
Users looker_get_me, looker_list_users, looker_get_user
Schedules looker_list_scheduled_plans, looker_get_scheduled_plan

Test plan

  • cargo build --release --target wasm32-wasip1 -p looker-wasm succeeds
  • cargo clippy --target wasm32-wasip1 --all -- -D warnings clean
  • cargo fmt --check clean
  • Smoke test against Switchboard host runtime (wasm.Runtime.LoadModule):
    • name() returns "looker"
    • metadata() returns abi_version: 1, all credential keys, plaintext keys, placeholders
    • tools() returns 23 definitions
    • configure() rejects missing base_url and accepts a valid one (auto-appends /api/4.0)
    • execute() returns a structured error for unknown tools and missing required args
  • Live test against a real Looker instance (will validate after merge)

daltoniam and others added 3 commits May 15, 2026 14:30
23 tools across search, folders, Looks, dashboards, queries, SQL Runner,
LookML models, connections, users, and scheduled plans. Auth uses Looker's
API3 client_id/client_secret login flow with a process-scoped token cache
that auto-refreshes on 401. All _run_* and _create_* tools clamp `limit`
to a max of 5,000 rows (default 100) to prevent runaway responses.

Includes prebuilt dist/looker.wasm (~217 KB) and an updated marketplace
manifest entry.

Co-Authored-By: Claude <noreply@anthropic.com>
Introduce a standalone Bland.ai plugin so voice AI and org management tools can ship through the plugin marketplace instead of core Switchboard.

💘 Generated with Crush

Assisted-by: GPT-5.5 via Crush <crush@charm.land>

Co-Authored-By: GPT-5.5 <noreply@anthropic.com>
@daltoniam daltoniam merged commit 9693e0a into main May 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant