@hyakt/opencode-smart-titleOpenCode plugin that automatically generates meaningful session titles using AI and smart context selection
0
16
近 7 天 7
22.7
生态多维模型
3 个月前
2026-05-18
快速安装与配置
opencode.json写入当前项目的 opencode.json,只对这个仓库生效。
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@hyakt/opencode-smart-title@0.1.10"]
}写入 ~/.config/opencode/opencode.json,对所有项目生效。
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@hyakt/opencode-smart-title@0.1.10"]
}若你要在本地改造这个插件,先装到项目里再从本地路径引用。
shell
pnpm add -D @hyakt/opencode-smart-titleopencode 启动时会通过内嵌运行时自动加载 npm 依赖并缓存至本地目录,无需手动在全局环境执行安装。
Auto-generates meaningful session titles for your OpenCode conversations using AI.
Forked from @tarquinen/opencode-smart-title.
What Changed (Why This Fork)
The original plugin uses @tarquinen/opencode-auth-provider + ai SDK to call LLM APIs directly from the plugin. This approach has a compatibility issue: the auth-provider's custom fetch wrapper returns undefined instead of a proper Response object when used with the github-copilot provider, causing extractResponseHeaders(response) to crash with TypeError: undefined is not an object.
This fork replaces the direct API call with OpenCode's subagent session API (client.session.create / client.session.prompt), delegating LLM calls to OpenCode itself.
Benefits
- Works with all providers including
github-copilot(no auth-provider fetch bug) - Removed 3 heavy dependencies:
ai,@ai-sdk/openai-compatible,@tarquinen/opencode-auth-provider - Custom prompt support via
promptconfig field
What It Does
- Watches your conversation and generates short, descriptive titles
- Updates automatically when the session becomes idle (you stop typing)
- Delegates LLM calls to OpenCode via subagent sessions - no direct API calls
- Works with any provider that OpenCode supports
Installation
Add to ~/.config/opencode/opencode.json:
{
"plugin": ["@hyakt/opencode-smart-title"]
}
Configuration
The plugin supports both global and project-level configuration:
- Global:
~/.config/opencode/smart-title.jsonc- Applies to all sessions - Project:
.opencode/smart-title.jsonc- Overrides global config
The plugin creates a default global config on first run.
{
// Enable or disable the plugin
"enabled": true,
// Enable debug logging
"debug": false,
// Optional: Use a specific model (format: "provider/model")
// "model": "github-copilot/claude-haiku-4.5",
// Optional: Custom prompt for title generation
// "prompt": "Generate a short Japanese title for this conversation.",
// Update title every N idle events (1 = every time you pause)
"updateThreshold": 1
}
License
MIT