### Changes:
1. **Moved kugetsu-pm to skills/kugetsu/pm/SKILL.md**
- Simplified to 79 lines (under 100 line target)
- kugetsu v3.0 with essential PM role definition
- PM context injected at init/start/continue time
2. **Updated kugetsu_get_pm_context()**
- Now reads from ~/.kugetsu/pm-agent.md (user custom) first
- Falls back to skills/kugetsu/pm/SKILL.md (default)
3. **Updated kugetsu-chat v4.0**
- Added notification checking on status/update queries
- When user asks "status?", "any updates?", etc., check kugetsu notify list
- Hybrid approach: PM includes notifications + kugetsu-chat checks on status
4. **Removed old skills/kugetsu-pm/SKILL.md**
- Replaced by skills/kugetsu/pm/SKILL.md
### Structure:
skills/kugetsu/
├── SKILL.md
├── scripts/kugetsu
├── chat/ # future: kugetsu-chat could move here
│ ├── SKILL.md
│ └── SOUL.md
└── pm/
└── SKILL.md # PM role definition (v3.0)
2.9 KiB
2.9 KiB
name, description, license, compatibility, metadata
| name | description | license | compatibility | metadata | ||||
|---|---|---|---|---|---|---|---|---|
| kugetsu-chat | Kugetsu Chat Agent - REQUIRED skill for ALL non-casual Telegram messages. This skill MUST be loaded and used for task delegation. | MIT | Requires Hermes agent with Telegram configured, kugetsu CLI, opencode sessions. |
|
kugetsu-chat - REQUIRED SKILL FOR KUGETSU ROUTING
THIS SKILL MUST BE USED for any message that is not casual conversation.
CRITICAL: When to Use This Skill
YOU MUST LOAD AND USE THIS SKILL when:
- Any message containing "issue", "fix", "create", "test", "implement"
- Any message containing issue numbers like "#5", "#14", "#123"
- Any message that looks like a task request or status query
- Any message containing "pm", "status", "progress", "work on"
- Any message containing "notify", "updates", "notifications"
DO NOT USE THIS SKILL for:
- "hi", "hello", "hey"
- "thanks", "thank you"
- "how are you", "what's up"
- Casual greetings
Required Actions
Step 1: Load This Skill
/kugetsu-chat
Step 2: Check if kugetsu is initialized
terminal(command="kugetsu status", timeout=10)
Step 3: Route Based on Message Type
For STATUS/UPDATE queries:
terminal(command="kugetsu notify list", timeout=10)
Then include notifications in response.
For TASK requests:
terminal(command="kugetsu delegate '<entire user message>'", timeout=120)
Step 4: Relay the response to the user
Delegation Command
The command for task delegation:
kugetsu delegate '<user message>'
Example:
terminal(command="kugetsu delegate 'fix issue #5 in github.com/shoko/kugetsu'", timeout=120)
Notification Checking
When user asks about status/updates, check notifications:
kugetsu notify list
Include any unread notifications in your response.
Error Handling
| Status Output | Meaning | Action |
|---|---|---|
ok |
kugetsu is ready | Proceed with delegation |
kugetsu_not_initialized |
Not set up | Tell user to run kugetsu init |
pm_agent_missing |
PM not created | Tell user to run kugetsu init |
pm_agent_expired |
PM session expired | Tell user to run kugetsu doctor --fix |
Quick Reference
DELEGATION COMMAND:
terminal(command="kugetsu delegate '<message>'", timeout=120)
CHECK NOTIFICATIONS:
terminal(command="kugetsu notify list", timeout=10)
CHECK STATUS:
terminal(command="kugetsu status", timeout=10)
Required Dependencies
kugetsuCLI installed and in PATH- kugetsu initialized via
kugetsu init
Notes
- ALWAYS use
kugetsu delegatecommand - ALWAYS wrap user message in single quotes inside the command
- ALWAYS use timeout of at least 120 seconds for delegation
- kugetsu delegates to the persistent PM agent session created during init
- PM Agent writes task notifications to
~/.kugetsu/notifications.json