ワンクリックで
connect
Connect skill — wire an external integration into the vault via the user's chosen CLI / MCP / pp-CLI
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Connect skill — wire an external integration into the vault via the user's chosen CLI / MCP / pp-CLI
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Capability discovery — the canonical answer to 'what can you do?' and 'what do I say to ...?'
Close skill — draft resolution comment, sync backends, redirect to next task
Start skill — begin task with optional backend sync
End-of-day wrap-up skill — daily summary and status update
Morning brief skill — prioritized daily summary
Reconcile skill — detect wiki/backend drift and let the User resolve it via four moves
| name | connect |
| description | Connect skill — wire an external integration into the vault via the user's chosen CLI / MCP / pp-CLI |
Wire an external service into this vault as an integration. Integrations come on demand — there is no pre-shipped registry of supported services and no built-in backend list. When the user wants to act on a service that isn't wired up, you surface the four ways to bridge to it and let them pick.
$ARGUMENTS — the service to connect (e.g. linear, notion, slack,
some-internal-tool). If empty, ask the user which service they want.
When $ARGUMENTS is set and the service isn't already wired up (no bridge doc
at .rubber-ducky/integrations/<name>.md), tell the user verbatim:
Looks like
<service>isn't connected yet. Four ways to wire it up:(a) Official CLI (recommended) — if
<service>ships one (gh,jira-cli, etc.), install it; I'll bridge to it. (b) Printing-press CLI — I generate a<service>-pp-clifrom the API. Requires Go. (c) MCP server — if a good MCP server exists for<service>, point me at it. (d) Hand-write — you already have a custom CLI or script. Tell me what to call.Which fits?
Don't prescribe; the user knows their situation. Once they pick, branch to the matching path below.
The user names a CLI that's already on $PATH (or installs one). This is the
preferred path: rubber-ducky doesn't reinvent service-specific knowledge —
the official CLI knows its own service best.
which <binary> to confirm it's reachable. If
not, stop and ask the user to install it (link to the project's install
docs).<binary> --help and the help text for its
primary list / get verbs. If a --json or comparable structured-output
flag exists, capture that — it's what rubber-ducky will pipe through to
produce wiki content.gh auth login, jira-cli init, etc.) or in .env.local. Never
accept pasted credentials in chat.The Printing Press generates agent-native Go CLIs (auto-JSON on pipe, typed exit codes, local SQLite). Use this when no official CLI exists.
which printing-press. If missing:
$PATH: offer to install with
go install github.com/mvanhorn/cli-printing-press/v4/cmd/printing-press@latest.$PATH: stop and instruct the user to install Go from
go.dev/dl, then re-run.<service>-pp-cli.<service>-pp-cli --help, then a small sample
command (e.g. <service>-pp-cli issues list --json | head) once the user
has authenticated.Some services have first-party or community MCP servers. rubber-ducky's own architecture is CLI-first — we don't build on MCP as canonical infrastructure — but the user's integration choice is theirs, and an MCP server may fit their situation better than a CLI.
claude mcp if they haven't wired it up.mcp__service__create_resource).The user already has a custom CLI, shell script, or wrapper.
$PATH) and the
verbs rubber-ducky should use for create / read / update / status / etc.which <binary> to confirm reachability.Create .rubber-ducky/integrations/<name>.md describing:
source:, ref:, status mapping). Don't make this up — ask the user, or read it from a sample command's output..env.local) or external auth flows authenticate the transport. Names only — never values.Walk the user through each section. The doc is markdown for the Agent, not parsed config — clarity matters more than schema.
After the bridge doc is written:
integrations: list in workspace.md
frontmatter (create the list if absent).## Connected integrations in CLAUDE.md: the
integration name and a pointer to its bridge doc.Offer to pull a small set of resources into the wiki to validate the bridge doc end-to-end:
Want me to pull a few resources in so we can sanity-check the mapping?
If yes, fetch a small batch via the transport's list verb and rubber-ducky page create task each as a wiki page using the bridge doc's mapping.
.env.local or via the transport's own auth (gh auth login, etc.). Never accept pasted credentials.If .rubber-ducky/integrations/<name>.md already exists, ask:
<name>is already connected — re-run setup, update the bridge doc, or cancel?
Never silently overwrite.
A short summary: