YukkaiConnect — GitHub, Slack, Notion & More

Connect Yukkai to your favorite services — GitHub, Slack, Notion, Trello, Linear, Asana, Gmail, and Google Drive — through a unified OAuth-powered plugin system.

YukkaiConnect is Yukkai's built-in integration framework that connects your AI agent to the external services you use every day. Instead of manually copying data between apps, Yukkai can read your GitHub issues, post Slack messages, create Notion pages, manage Trello cards, and more — all from the conversation interface.

Supported Plugins

Plugin Capabilities
GitHub Read issues, create PRs, review code, manage repositories
Slack Send messages, read channels, search history
Notion Create pages, query databases, update content
Trello Manage cards, move lists, add comments
Linear Create issues, update status, view cycles
Asana Manage tasks, projects, and assignments
Gmail Read emails, send messages, search inbox
Google Drive List files, read documents, upload content

More plugins are continuously added.

How It Works

Dynamic Tool Registration

When you activate a plugin in Settings → YukkaiConnect, Yukkai registers it as a set of dynamic tools following the naming convention:

connect_{pluginId}_{actionId}

For example, activating the GitHub plugin exposes tools like:

  • connect_github_list_issues
  • connect_github_create_pr
  • connect_github_review_code
These tools behave exactly like Yukkai's 39 native tools — they're registered in the ToolRegistry, exposed to the LLM via JSON Schema, and protected by the same security gates (PathGuard, SecretDetector, InjectionDetector, LLMController).

OAuth2 Authentication

Most plugins use OAuth2 for secure, token-based authentication. Yukkai's OAuthManager handles the full loopback flow:

  1. You click Connect next to a plugin in Settings.
  2. Yukkai opens your default browser to the service's authorization page.
  3. You grant permissions and authorize the app.
  4. The browser redirects back to Yukkai's local loopback server.
  5. Yukkai exchanges the authorization code for access (and refresh) tokens.
  6. Tokens are stored securely in the macOS Keychain via SecureVaultService.
The LLM never sees your tokens. When a plugin tool makes an API call, the token is injected client-side — the AI only sees the result, never the credential.

API Key Authentication

Some plugins (or some plugin actions) use API keys instead of OAuth2. These are stored in the same secure vault, and referenced via {{VAULT:service}} placeholders internally. You manage your API keys in Settings → API Keys.

Activating a Plugin

  1. Open Settings → YukkaiConnect.
  2. Find the plugin you want to connect.
  3. Click Connect.
  4. Complete the OAuth flow in your browser.
  5. The plugin status changes to Connected.
Once connected, Yukkai automatically discovers the plugin's available actions and registers them as tools. You can immediately ask Yukkai to use them in conversation:

"Show me my open GitHub issues in the backend repo"
"Post a message in the #deployments Slack channel: 'Release v2.1 is live'"
"Create a Notion page with today's meeting notes"

Security

YukkaiConnect inherits all of Yukkai's security layers:

  • SecretDetector — Masks any API key or token that accidentally appears in a response.
  • InjectionDetector — Prevents prompt injection from external service data.
  • LLMController — Validates that plugin tool calls are consistent with your intent before executing.
  • PathGuard — Intercepts any file paths involved in plugin operations.
Tokens are stored in the macOS Keychain (never in plaintext), and SecureDefaults encrypts any cached plugin metadata with AES-256-GCM.

Disconnecting a Plugin

  1. Open Settings → YukkaiConnect.
  2. Find the connected plugin.
  3. Click Disconnect.
  4. Yukkai revokes the OAuth token (where supported) and removes the plugin's tools from the ToolRegistry.
Disconnecting is immediate — the AI can no longer call that plugin's tools in the current or future sessions until you reconnect.

Tips

  • Scope your OAuth grants: When authorizing, only grant the scopes the plugin actually needs. Yukkai requests minimal scopes by default, but you should always review them.
  • Reconnect after token expiry: If a plugin stops working, it may be due to an expired refresh token. Simply click Connect again.
  • Check connection status: Ask Yukkai "Which plugins are connected?" and it will list the active integrations.