2025-12-24 17:11:18 +09:00
|
|
|
# FEATURES KNOWLEDGE BASE
|
|
|
|
|
|
|
|
|
|
## OVERVIEW
|
2026-01-17 22:01:56 +09:00
|
|
|
|
2026-02-01 19:26:57 +09:00
|
|
|
20 feature modules: background agents, skill MCPs, builtin skills/commands, Claude Code compatibility layer.
|
|
|
|
|
|
|
|
|
|
**Feature Types**: Task orchestration, Skill definitions, Command templates, Claude Code loaders, Supporting utilities
|
2025-12-24 17:11:18 +09:00
|
|
|
|
|
|
|
|
## STRUCTURE
|
2026-01-17 22:01:56 +09:00
|
|
|
|
2025-12-24 17:11:18 +09:00
|
|
|
```
|
|
|
|
|
features/
|
2026-02-01 19:26:57 +09:00
|
|
|
├── background-agent/ # Task lifecycle (1418 lines)
|
2026-01-23 02:14:08 +09:00
|
|
|
│ ├── manager.ts # Launch → poll → complete
|
2026-01-26 11:48:30 +09:00
|
|
|
│ └── concurrency.ts # Per-provider limits
|
|
|
|
|
├── builtin-skills/ # Core skills (1729 lines)
|
2026-02-06 17:20:19 +09:00
|
|
|
│ └── skills.ts # playwright, agent-browser, frontend-ui-ux, git-master, dev-browser
|
2026-02-01 19:26:57 +09:00
|
|
|
├── builtin-commands/ # ralph-loop, refactor, ulw-loop, init-deep, start-work, cancel-ralph, stop-continuation
|
2026-01-02 10:42:38 +09:00
|
|
|
├── claude-code-agent-loader/ # ~/.claude/agents/*.md
|
|
|
|
|
├── claude-code-command-loader/ # ~/.claude/commands/*.md
|
2026-01-26 14:56:55 +09:00
|
|
|
├── claude-code-mcp-loader/ # .mcp.json with ${VAR} expansion
|
2026-01-13 21:00:00 +09:00
|
|
|
├── claude-code-plugin-loader/ # installed_plugins.json
|
2026-01-23 02:14:08 +09:00
|
|
|
├── claude-code-session-state/ # Session persistence
|
|
|
|
|
├── opencode-skill-loader/ # Skills from 6 directories
|
2026-01-17 22:01:56 +09:00
|
|
|
├── context-injector/ # AGENTS.md/README.md injection
|
|
|
|
|
├── boulder-state/ # Todo state persistence
|
2026-01-25 13:12:40 +09:00
|
|
|
├── hook-message-injector/ # Message injection
|
2026-01-26 11:48:30 +09:00
|
|
|
├── task-toast-manager/ # Background task notifications
|
2026-02-01 19:26:57 +09:00
|
|
|
├── skill-mcp-manager/ # MCP client lifecycle (617 lines)
|
2026-01-26 11:48:30 +09:00
|
|
|
├── tmux-subagent/ # Tmux session management
|
2026-02-01 19:26:57 +09:00
|
|
|
├── mcp-oauth/ # MCP OAuth handling
|
|
|
|
|
├── sisyphus-swarm/ # Swarm coordination
|
2026-02-03 16:21:31 +09:00
|
|
|
├── sisyphus-tasks/ # Task tracking
|
|
|
|
|
└── claude-tasks/ # Task schema/storage - see AGENTS.md
|
2025-12-24 17:11:18 +09:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## LOADER PRIORITY
|
2026-01-17 22:01:56 +09:00
|
|
|
|
|
|
|
|
| Type | Priority (highest first) |
|
|
|
|
|
|------|--------------------------|
|
2026-01-23 02:14:08 +09:00
|
|
|
| Commands | `.opencode/command/` > `~/.config/opencode/command/` > `.claude/commands/` |
|
|
|
|
|
| Skills | `.opencode/skills/` > `~/.config/opencode/skills/` > `.claude/skills/` |
|
2025-12-24 17:11:18 +09:00
|
|
|
| MCPs | `.claude/.mcp.json` > `.mcp.json` > `~/.claude/.mcp.json` |
|
|
|
|
|
|
2026-01-17 22:01:56 +09:00
|
|
|
## BACKGROUND AGENT
|
|
|
|
|
|
2026-01-23 02:14:08 +09:00
|
|
|
- **Lifecycle**: `launch` → `poll` (2s) → `complete`
|
|
|
|
|
- **Stability**: 3 consecutive polls = idle
|
2026-01-26 11:48:30 +09:00
|
|
|
- **Concurrency**: Per-provider/model limits via `ConcurrencyManager`
|
2026-01-23 02:14:08 +09:00
|
|
|
- **Cleanup**: 30m TTL, 3m stale timeout
|
2026-01-26 11:48:30 +09:00
|
|
|
- **State**: Per-session Maps, cleaned on `session.deleted`
|
2026-01-17 22:01:56 +09:00
|
|
|
|
|
|
|
|
## SKILL MCP
|
|
|
|
|
|
2026-01-23 02:14:08 +09:00
|
|
|
- **Lazy**: Clients created on first call
|
|
|
|
|
- **Transports**: stdio, http (SSE/Streamable)
|
|
|
|
|
- **Lifecycle**: 5m idle cleanup
|
2025-12-24 17:11:18 +09:00
|
|
|
|
2026-01-02 10:42:38 +09:00
|
|
|
## ANTI-PATTERNS
|
2026-01-17 22:01:56 +09:00
|
|
|
|
2026-01-23 02:14:08 +09:00
|
|
|
- **Sequential delegation**: Use `delegate_task` parallel
|
|
|
|
|
- **Trust self-reports**: ALWAYS verify
|
2026-01-17 22:01:56 +09:00
|
|
|
- **Main thread blocks**: No heavy I/O in loader init
|
2026-01-26 11:48:30 +09:00
|
|
|
- **Direct state mutation**: Use managers for boulder/session state
|