codeforge-dev 1.5.8 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.devcontainer/.env +2 -1
- package/.devcontainer/CHANGELOG.md +56 -0
- package/.devcontainer/CLAUDE.md +65 -15
- package/.devcontainer/README.md +65 -4
- package/.devcontainer/config/keybindings.json +5 -0
- package/.devcontainer/config/main-system-prompt.md +63 -2
- package/.devcontainer/config/settings.json +25 -6
- package/.devcontainer/devcontainer.json +18 -2
- package/.devcontainer/features/README.md +21 -7
- package/.devcontainer/features/ccburn/README.md +60 -0
- package/.devcontainer/features/ccburn/devcontainer-feature.json +38 -0
- package/.devcontainer/features/ccburn/install.sh +174 -0
- package/.devcontainer/features/ccstatusline/README.md +22 -21
- package/.devcontainer/features/ccstatusline/devcontainer-feature.json +1 -1
- package/.devcontainer/features/ccstatusline/install.sh +48 -16
- package/.devcontainer/features/claude-code/config/settings.json +60 -24
- package/.devcontainer/features/mcp-qdrant/devcontainer-feature.json +1 -1
- package/.devcontainer/features/mcp-reasoner/devcontainer-feature.json +1 -1
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/scripts/__pycache__/format-on-stop.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/scripts/format-on-stop.py +21 -6
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/scripts/__pycache__/lint-file.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/scripts/lint-file.py +7 -10
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/REVIEW-RUBRIC.md +440 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/architect.md +190 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/bash-exec.md +173 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/claude-guide.md +155 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/dependency-analyst.md +248 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/doc-writer.md +233 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/explorer.md +235 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/generalist.md +125 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/git-archaeologist.md +242 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/migrator.md +195 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/perf-profiler.md +265 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/refactorer.md +209 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/researcher.md +195 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/security-auditor.md +289 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/spec-writer.md +284 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/statusline-config.md +188 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/test-writer.md +245 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/hooks/hooks.json +12 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/guard-readonly-bash.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/redirect-builtin-agents.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/skill-suggester.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/syntax-validator.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/verify-no-regression.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/verify-tests-pass.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/guard-readonly-bash.py +611 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/redirect-builtin-agents.py +83 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/skill-suggester.py +85 -2
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/syntax-validator.py +9 -4
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/verify-no-regression.py +221 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/verify-tests-pass.py +176 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/claude-agent-sdk/SKILL.md +599 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/claude-agent-sdk/references/sdk-typescript-reference.md +954 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/git-forensics/SKILL.md +276 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/git-forensics/references/advanced-commands.md +332 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/git-forensics/references/investigation-playbooks.md +319 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/performance-profiling/SKILL.md +341 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/performance-profiling/references/interpreting-results.md +235 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/performance-profiling/references/tool-commands.md +395 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/refactoring-patterns/SKILL.md +344 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/refactoring-patterns/references/safe-transformations.md +247 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/refactoring-patterns/references/smell-catalog.md +332 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/security-checklist/SKILL.md +277 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/security-checklist/references/owasp-patterns.md +269 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/security-checklist/references/secrets-patterns.md +253 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/specification-writing/SKILL.md +288 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/specification-writing/references/criteria-patterns.md +245 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/skills/specification-writing/references/ears-templates.md +239 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/__pycache__/guard-protected.cpython-314.pyc +0 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected.py +40 -39
- package/.devcontainer/scripts/setup-aliases.sh +10 -5
- package/.devcontainer/scripts/setup-config.sh +2 -0
- package/.devcontainer/scripts/setup-plugins.sh +38 -46
- package/.devcontainer/scripts/setup-projects.sh +175 -0
- package/.devcontainer/scripts/setup-symlink-claude.sh +36 -0
- package/.devcontainer/scripts/setup-update-claude.sh +11 -8
- package/.devcontainer/scripts/setup.sh +4 -2
- package/package.json +1 -1
- package/.devcontainer/scripts/setup-irie-claude.sh +0 -32
package/.devcontainer/.env
CHANGED
|
@@ -21,5 +21,6 @@ SETUP_PLUGINS=true
|
|
|
21
21
|
SETUP_UPDATE_CLAUDE=true
|
|
22
22
|
|
|
23
23
|
# Plugin blacklist (comma-separated plugin names to skip during auto-install)
|
|
24
|
-
#
|
|
24
|
+
# workflow-enhancer: Not fully implemented yet — scaffolding only
|
|
25
|
+
# planning-reminder: Redundant with Claude Code v2.1+ which auto-switches to plan mode
|
|
25
26
|
PLUGIN_BLACKLIST="workflow-enhancer,planning-reminder"
|
|
@@ -1,5 +1,61 @@
|
|
|
1
1
|
# CodeForge Devcontainer Changelog
|
|
2
2
|
|
|
3
|
+
## [v1.7.0] - 2026-02-08
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- **ccburn feature** — new devcontainer feature for visual token burn rate tracking with shell aliases and statusline wrapper
|
|
8
|
+
- **Session resume widget** — ccstatusline displays copyable `cc --resume {sessionId}` command on line 5
|
|
9
|
+
- **Burn rate widget** — ccstatusline line 6 shows live ccburn compact output with pace indicators (session/weekly/sonnet limits)
|
|
10
|
+
- **17 custom agent definitions** — code-directive plugin now includes specialized agents: architect, bash-exec, claude-guide, debug-logs, dependency-analyst, doc-writer, explorer, generalist, git-archaeologist, migrator, perf-profiler, refactorer, researcher, security-auditor, spec-writer, statusline-config, test-writer
|
|
11
|
+
- **6 new skills** — claude-agent-sdk, git-forensics, performance-profiling, refactoring-patterns, security-checklist, specification-writing
|
|
12
|
+
- **Agent redirect hook** — `redirect-builtin-agents.py` (PreToolUse/Task) transparently swaps built-in agent types (Explore→explorer, Plan→architect, etc.) to enhanced custom agents
|
|
13
|
+
- **Readonly bash guard** — `guard-readonly-bash.py` blocks write operations for read-only agents
|
|
14
|
+
- **Regression test hooks** — `verify-no-regression.py` (PostToolUse for refactorer) and `verify-tests-pass.py` (Stop for test-writer)
|
|
15
|
+
- **REVIEW-RUBRIC.md** — quality standards document for agent/skill development
|
|
16
|
+
- **Keybindings configuration** — new `config/keybindings.json` with schema support
|
|
17
|
+
- **VS Code terminal passthrough** — `Ctrl+P` and `Ctrl+F` pass through to Claude Code via `terminal.integrated.commandsToSkipShell`
|
|
18
|
+
- **claude-agent-sdk skill** — new code-directive skill for Claude Agent SDK TypeScript integration
|
|
19
|
+
- **OVERWRITE_CONFIG documentation** — documented ephemeral settings behavior
|
|
20
|
+
- **Project Manager integration** — `setup-projects.sh` auto-detects projects under `/workspaces/`, watches for changes via inotifywait, maintains `projects.json`
|
|
21
|
+
- **Claude config symlink** — `setup-symlink-claude.sh` symlinks `~/.claude` → `$CLAUDE_CONFIG_DIR` for third-party tool compatibility
|
|
22
|
+
- **Project Manager VS Code extension** — `alefragnani.project-manager` added to devcontainer
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
|
|
26
|
+
- **ccstatusline layout** — expanded from 3→6 lines (13→16 widgets), reorganized into logical groups (core metrics, tokens, git, session, totals, burn rate)
|
|
27
|
+
- **ccstatusline version** — bumped from 1.0.0 to 1.1.0
|
|
28
|
+
- **Plugin declarations centralized** — all 9 marketplace plugins declared in `enabledPlugins` in `config/settings.json`
|
|
29
|
+
- **setup-plugins.sh cache sync** — re-added plugin install loop to sync cache from source on every container start; added `.env` fallback so `PLUGIN_BLACKLIST` works on standalone invocation
|
|
30
|
+
- **Feature-level config synced** — `features/claude-code/config/settings.json` mirrors main config (model → `claude-opus-4-6`, `MAX_THINKING_TOKENS` → `63999`, `cleanupPeriodDays` → `60`, all env vars)
|
|
31
|
+
- **8 new env vars** — `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY`, `CLAUDE_CODE_MAX_RETRIES`, `BASH_MAX_OUTPUT_LENGTH`, `TASK_MAX_OUTPUT_LENGTH`, `CLAUDE_CODE_PLAN_MODE_INTERVIEW_PHASE`, `CLAUDE_CODE_PLAN_V2_AGENT_COUNT`, `CLAUDE_CODE_PLAN_MODE_REQUIRED`, `CLAUDE_CODE_FORCE_GLOBAL_CACHE`
|
|
32
|
+
- **setup-config.sh** — added `chown` for correct ownership; added keybindings.json to copy pipeline
|
|
33
|
+
- **setup-aliases.sh** — added idempotency guard
|
|
34
|
+
- **TMPDIR consistency** — `setup-update-claude.sh` and `ccstatusline/install.sh` use `${TMPDIR:-/tmp}`
|
|
35
|
+
- **installsAfter references** — mcp-qdrant and mcp-reasoner updated from `./features/claude-code` to `ghcr.io/anthropics/devcontainer-features/claude-code:1`
|
|
36
|
+
- **code-directive hooks.json** — added PreToolUse/Task hook for agent redirection
|
|
37
|
+
- **Auto-linter timeout** — pyright reduced from 55s to 10s
|
|
38
|
+
- **Auto-formatter tool paths** — resolved via `which` first
|
|
39
|
+
- **Protected-files-guard regex** — tightened `id_rsa` pattern
|
|
40
|
+
- **Syntax-validator JSONC regex** — handles URLs containing `://`
|
|
41
|
+
- **Skill-suggester keywords** — consolidated claude-agent-sdk phrases; added "compose" to docker
|
|
42
|
+
- **redirect-builtin-agents.py fix** — `updatedInput` now preserves all original tool input fields (Claude Code replaces rather than merges)
|
|
43
|
+
- **System prompt hardened** — added anti-fabrication rule, failure recovery strategy, and silent-violation guard to `execution_discipline` and `rule_precedence`
|
|
44
|
+
|
|
45
|
+
### Removed
|
|
46
|
+
|
|
47
|
+
- **setup-irie-claude.sh** — deleted (personal script, no longer invoked)
|
|
48
|
+
- **output-style widget** — removed from ccstatusline (low value)
|
|
49
|
+
|
|
50
|
+
### Documentation
|
|
51
|
+
|
|
52
|
+
- **CLAUDE.md** — added keybindings.json, updated plugins list, fixed model name, documented VS Code conflicts, documented OVERWRITE_CONFIG, added agents/skills sections, added new scripts
|
|
53
|
+
- **README.md** — fixed max output tokens, added keybindings section, added agents/skills, added project manager
|
|
54
|
+
- **features/README.md** — full rewrite listing all features
|
|
55
|
+
- **CHANGELOG.md** — squashed v1.6.0 + v1.6.1 into this entry
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
3
59
|
## [v1.5.8] - 2026-02-06
|
|
4
60
|
|
|
5
61
|
### Changed
|
package/.devcontainer/CLAUDE.md
CHANGED
|
@@ -11,13 +11,15 @@ CodeForge devcontainer for AI-assisted development with Claude Code.
|
|
|
11
11
|
│ ├── .env # Environment variables
|
|
12
12
|
│ ├── config/ # Default configurations
|
|
13
13
|
│ │ ├── settings.json # Claude Code settings
|
|
14
|
+
│ │ ├── keybindings.json # Claude Code keybindings
|
|
14
15
|
│ │ └── main-system-prompt.md
|
|
15
16
|
│ ├── features/ # Custom devcontainer features
|
|
16
17
|
│ ├── plugins/ # Local plugin marketplace
|
|
17
18
|
│ │ └── devs-marketplace/
|
|
18
19
|
│ └── scripts/ # Setup scripts
|
|
19
20
|
├── .claude/ # Runtime Claude config (created on first run)
|
|
20
|
-
│ ├── settings.json # Active settings
|
|
21
|
+
│ ├── settings.json # Active settings (OVERWRITE_CONFIG=true → rebuilt each start)
|
|
22
|
+
│ ├── keybindings.json # Active keybindings
|
|
21
23
|
│ └── system-prompt.md # Active system prompt
|
|
22
24
|
└── .gh/ # GitHub CLI config (persists across rebuilds)
|
|
23
25
|
└── hosts.yml # Authenticated hosts
|
|
@@ -30,8 +32,11 @@ CodeForge devcontainer for AI-assisted development with Claude Code.
|
|
|
30
32
|
| `devcontainer.json` | Container definition: base image, features, mounts, environment |
|
|
31
33
|
| `.env` | Environment variables controlling setup behavior |
|
|
32
34
|
| `config/settings.json` | Claude Code defaults: model, tokens, permissions, plugins |
|
|
35
|
+
| `config/keybindings.json` | Claude Code keybindings (empty by default — customizable) |
|
|
33
36
|
| `config/main-system-prompt.md` | Default system prompt defining assistant behavior |
|
|
34
37
|
|
|
38
|
+
> **Note**: `OVERWRITE_CONFIG=true` (default) means `.claude/settings.json` is overwritten on every container start. All persistent changes must go in `.devcontainer/config/settings.json`.
|
|
39
|
+
|
|
35
40
|
## Commands
|
|
36
41
|
|
|
37
42
|
| Command | Purpose |
|
|
@@ -63,6 +68,8 @@ To test a feature locally, reference it in `devcontainer.json`:
|
|
|
63
68
|
}
|
|
64
69
|
```
|
|
65
70
|
|
|
71
|
+
> **Note**: The old `./features/claude-code` local feature is no longer used. Claude Code is installed via `ghcr.io/anthropics/devcontainer-features/claude-code:1` (Anthropic's official feature). The local `features/claude-code/` directory contains only a fallback config for the feature's install script.
|
|
72
|
+
|
|
66
73
|
## Setup Scripts
|
|
67
74
|
|
|
68
75
|
Scripts in `./scripts/` run via `postStartCommand`:
|
|
@@ -70,17 +77,29 @@ Scripts in `./scripts/` run via `postStartCommand`:
|
|
|
70
77
|
| Script | Purpose |
|
|
71
78
|
|--------|---------|
|
|
72
79
|
| `setup.sh` | Main orchestrator |
|
|
73
|
-
| `setup-config.sh` | Copies config files to `/workspaces/.claude/` |
|
|
74
|
-
| `setup-aliases.sh` | Creates `cc` shell
|
|
75
|
-
| `setup-
|
|
76
|
-
| `setup-
|
|
80
|
+
| `setup-config.sh` | Copies config files (settings, keybindings, system prompt) to `/workspaces/.claude/` |
|
|
81
|
+
| `setup-aliases.sh` | Creates `cc`/`claude`/`ccraw` shell aliases |
|
|
82
|
+
| `setup-plugins.sh` | Registers local marketplace + installs official Anthropic plugins |
|
|
83
|
+
| `setup-update-claude.sh` | Background auto-update of Claude Code binary |
|
|
84
|
+
| `setup-projects.sh` | Auto-detects projects for VS Code Project Manager |
|
|
85
|
+
| `setup-symlink-claude.sh` | Symlinks ~/.claude for third-party tool compatibility |
|
|
77
86
|
|
|
78
87
|
## Installed Plugins
|
|
79
88
|
|
|
80
|
-
|
|
89
|
+
Plugins are declared in `config/settings.json` under `enabledPlugins` and auto-activated on container start:
|
|
90
|
+
|
|
91
|
+
### Official (Anthropic)
|
|
92
|
+
- `frontend-design@claude-code-plugins` — UI/frontend design skill
|
|
81
93
|
|
|
82
|
-
|
|
83
|
-
- `codeforge-lsp@devs-marketplace`
|
|
94
|
+
### Local Marketplace (devs-marketplace)
|
|
95
|
+
- `codeforge-lsp@devs-marketplace` — LSP for Python + TypeScript/JavaScript
|
|
96
|
+
- `ticket-workflow@devs-marketplace` — EARS-based ticket workflow with GitHub integration
|
|
97
|
+
- `notify-hook@devs-marketplace` — Desktop notifications on completion
|
|
98
|
+
- `dangerous-command-blocker@devs-marketplace` — Blocks destructive bash commands
|
|
99
|
+
- `protected-files-guard@devs-marketplace` — Blocks edits to secrets/lock files
|
|
100
|
+
- `auto-formatter@devs-marketplace` — Auto-formats Python/Go/JS/TS on stop
|
|
101
|
+
- `auto-linter@devs-marketplace` — Auto-lints Python files via Pyright
|
|
102
|
+
- `code-directive@devs-marketplace` — 17 custom agents, 16 skills, syntax validation, skill suggestions, agent redirect hook
|
|
84
103
|
|
|
85
104
|
### Local Marketplace
|
|
86
105
|
|
|
@@ -91,12 +110,41 @@ plugins/devs-marketplace/
|
|
|
91
110
|
├── .claude-plugin/
|
|
92
111
|
│ └── marketplace.json # Marketplace manifest
|
|
93
112
|
└── plugins/
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
113
|
+
├── codeforge-lsp/ # Combined LSP plugin
|
|
114
|
+
├── ticket-workflow/ # EARS ticket workflow
|
|
115
|
+
├── auto-formatter/ # Batch formatter (Stop hook)
|
|
116
|
+
├── auto-linter/ # Pyright linter
|
|
117
|
+
├── code-directive/ # Agents, skills + hooks
|
|
118
|
+
└── ...
|
|
97
119
|
```
|
|
98
120
|
|
|
99
|
-
|
|
121
|
+
## Agents & Skills
|
|
122
|
+
|
|
123
|
+
The `code-directive` plugin includes 17 custom agent definitions and 16 coding reference skills.
|
|
124
|
+
|
|
125
|
+
**Agents** (`plugins/devs-marketplace/plugins/code-directive/agents/`):
|
|
126
|
+
architect, bash-exec, claude-guide, debug-logs, dependency-analyst, doc-writer, explorer, generalist, git-archaeologist, migrator, perf-profiler, refactorer, researcher, security-auditor, spec-writer, statusline-config, test-writer
|
|
127
|
+
|
|
128
|
+
The `redirect-builtin-agents.py` hook (PreToolUse/Task) transparently swaps built-in agent types to these custom agents (e.g., Explore→explorer, Plan→architect).
|
|
129
|
+
|
|
130
|
+
**Skills** (`plugins/devs-marketplace/plugins/code-directive/skills/`):
|
|
131
|
+
claude-agent-sdk, claude-code-headless, debugging, docker, docker-py, fastapi, git-forensics, performance-profiling, pydantic-ai, refactoring-patterns, security-checklist, skill-building, specification-writing, sqlite, svelte5, testing
|
|
132
|
+
|
|
133
|
+
## VS Code Keybinding Conflicts
|
|
134
|
+
|
|
135
|
+
Claude Code runs inside VS Code's integrated terminal. VS Code intercepts some shortcuts before they reach the terminal:
|
|
136
|
+
|
|
137
|
+
| Shortcut | VS Code Action | Claude Code Action |
|
|
138
|
+
|----------|---------------|-------------------|
|
|
139
|
+
| `Ctrl+G` | Go to Line | `chat:externalEditor` |
|
|
140
|
+
| `Ctrl+S` | Save File | `chat:stash` |
|
|
141
|
+
| `Ctrl+T` | Open Symbol | `app:toggleTodos` |
|
|
142
|
+
| `Ctrl+O` | Open File | `app:toggleTranscript` |
|
|
143
|
+
| `Ctrl+B` | Toggle Sidebar | `task:background` |
|
|
144
|
+
| `Ctrl+P` | Quick Open | `chat:modelPicker` |
|
|
145
|
+
| `Ctrl+R` | Open Recent | `history:search` |
|
|
146
|
+
|
|
147
|
+
`Ctrl+P` and `Ctrl+F` are configured to pass through to the terminal via `terminal.integrated.commandsToSkipShell` in `devcontainer.json`. For other conflicts, use Meta (Alt) variants or customize via `config/keybindings.json`.
|
|
100
148
|
|
|
101
149
|
## Environment Variables
|
|
102
150
|
|
|
@@ -107,11 +155,13 @@ Key environment variables set in the container:
|
|
|
107
155
|
| `WORKSPACE_ROOT` | `/workspaces` |
|
|
108
156
|
| `CLAUDE_CONFIG_DIR` | `/workspaces/.claude` |
|
|
109
157
|
| `GH_CONFIG_DIR` | `/workspaces/.gh` |
|
|
110
|
-
| `ANTHROPIC_MODEL` | `claude-opus-4-
|
|
158
|
+
| `ANTHROPIC_MODEL` | `claude-opus-4-6` |
|
|
159
|
+
| `TMPDIR` | `/workspaces/.tmp` |
|
|
111
160
|
|
|
112
161
|
## Modifying Behavior
|
|
113
162
|
|
|
114
163
|
1. **Change default model**: Edit `config/settings.json`, update `"model"` field
|
|
115
164
|
2. **Change system prompt**: Edit `config/main-system-prompt.md`
|
|
116
|
-
3. **
|
|
117
|
-
4. **
|
|
165
|
+
3. **Change keybindings**: Edit `config/keybindings.json`
|
|
166
|
+
4. **Add features**: Add to `"features"` in `devcontainer.json`
|
|
167
|
+
5. **Disable auto-setup**: Set variables to `false` in `.env`
|
package/.devcontainer/README.md
CHANGED
|
@@ -143,7 +143,8 @@ GitHub CLI credentials are automatically persisted across container rebuilds. Th
|
|
|
143
143
|
| `claude` | Claude Code CLI |
|
|
144
144
|
| `cc` | Wrapper with auto-configuration |
|
|
145
145
|
| `ccusage` | Token usage analyzer |
|
|
146
|
-
| `
|
|
146
|
+
| `ccburn` | Visual token burn rate tracker with pace indicators |
|
|
147
|
+
| `ccstatusline` | 6-line powerline status display (v1.1.0) |
|
|
147
148
|
| `claude-monitor` | Real-time usage tracking |
|
|
148
149
|
|
|
149
150
|
## Using Claude Code
|
|
@@ -188,7 +189,24 @@ Default settings are in `.devcontainer/config/settings.json`. These are copied t
|
|
|
188
189
|
Key defaults:
|
|
189
190
|
- **Model**: Claude Opus 4-6
|
|
190
191
|
- **Default mode**: Plan (prompts before executing)
|
|
191
|
-
- **Max output tokens**:
|
|
192
|
+
- **Max output tokens**: 64,000
|
|
193
|
+
|
|
194
|
+
### Keybindings
|
|
195
|
+
|
|
196
|
+
Default keybindings are in `.devcontainer/config/keybindings.json` (empty by default — Claude Code defaults apply). Customize by adding entries to the `bindings` array.
|
|
197
|
+
|
|
198
|
+
**VS Code Terminal Passthrough**: `Ctrl+P` and `Ctrl+F` are configured to pass through to the terminal (via `terminal.integrated.commandsToSkipShell`) so Claude Code receives them. Other VS Code shortcuts that conflict with Claude Code:
|
|
199
|
+
|
|
200
|
+
| Shortcut | VS Code Action | Claude Code Action |
|
|
201
|
+
|----------|---------------|-------------------|
|
|
202
|
+
| `Ctrl+G` | Go to Line | `chat:externalEditor` |
|
|
203
|
+
| `Ctrl+S` | Save File | `chat:stash` |
|
|
204
|
+
| `Ctrl+T` | Open Symbol | `app:toggleTodos` |
|
|
205
|
+
| `Ctrl+O` | Open File | `app:toggleTranscript` |
|
|
206
|
+
| `Ctrl+B` | Toggle Sidebar | `task:background` |
|
|
207
|
+
| `Ctrl+R` | Open Recent | `history:search` |
|
|
208
|
+
|
|
209
|
+
For conflicting shortcuts, use Meta (Alt) variants or add custom keybindings.
|
|
192
210
|
|
|
193
211
|
### System Prompt
|
|
194
212
|
|
|
@@ -200,14 +218,57 @@ CodeForge includes several custom devcontainer features:
|
|
|
200
218
|
|
|
201
219
|
| Feature | Description |
|
|
202
220
|
|---------|-------------|
|
|
221
|
+
| `tmux` | Terminal multiplexer with Catppuccin theme for Agent Teams |
|
|
222
|
+
| `agent-browser` | Headless browser automation for AI agents |
|
|
203
223
|
| `claude-monitor` | Real-time token usage monitoring with ML predictions |
|
|
204
224
|
| `ccusage` | Usage analytics CLI |
|
|
205
|
-
| `
|
|
225
|
+
| `ccburn` | Visual token burn rate tracker with pace indicators |
|
|
226
|
+
| `ccstatusline` | 6-line powerline status display (v1.1.0) |
|
|
206
227
|
| `ast-grep` | Structural code search using AST patterns |
|
|
207
228
|
| `tree-sitter` | Parser with JS/TS/Python grammars |
|
|
208
229
|
| `lsp-servers` | Pyright and TypeScript language servers |
|
|
209
|
-
| `tmux` | Terminal multiplexer with Catppuccin theme for Agent Teams |
|
|
210
230
|
| `biome` | Fast JS/TS/JSON/CSS formatter (global install) |
|
|
231
|
+
| `notify-hook` | Desktop notifications on Claude completion |
|
|
232
|
+
| `mcp-qdrant` | Qdrant vector database MCP server (optional) |
|
|
233
|
+
| `mcp-reasoner` | Enhanced AI reasoning MCP server (optional) |
|
|
234
|
+
|
|
235
|
+
## Agents & Skills
|
|
236
|
+
|
|
237
|
+
The `code-directive` plugin includes specialized agent definitions and coding reference skills.
|
|
238
|
+
|
|
239
|
+
### Custom Agents (17)
|
|
240
|
+
|
|
241
|
+
Agent definitions in `plugins/devs-marketplace/plugins/code-directive/agents/` provide enhanced behavior when spawned via the `Task` tool. The `redirect-builtin-agents.py` hook transparently swaps built-in agent types to these custom agents.
|
|
242
|
+
|
|
243
|
+
| Agent | Purpose |
|
|
244
|
+
|-------|---------|
|
|
245
|
+
| `architect` | System design and implementation planning |
|
|
246
|
+
| `bash-exec` | Command execution specialist |
|
|
247
|
+
| `claude-guide` | Claude Code feature guidance |
|
|
248
|
+
| `debug-logs` | Log analysis and error diagnosis |
|
|
249
|
+
| `dependency-analyst` | Dependency analysis and upgrades |
|
|
250
|
+
| `doc-writer` | Documentation authoring |
|
|
251
|
+
| `explorer` | Fast codebase search and navigation |
|
|
252
|
+
| `generalist` | General-purpose multi-step tasks |
|
|
253
|
+
| `git-archaeologist` | Git history forensics |
|
|
254
|
+
| `migrator` | Code migration and upgrades |
|
|
255
|
+
| `perf-profiler` | Performance profiling |
|
|
256
|
+
| `refactorer` | Code refactoring with regression checks |
|
|
257
|
+
| `researcher` | Research and information gathering |
|
|
258
|
+
| `security-auditor` | Security vulnerability analysis |
|
|
259
|
+
| `spec-writer` | Specification and requirements authoring |
|
|
260
|
+
| `statusline-config` | ccstatusline configuration |
|
|
261
|
+
| `test-writer` | Test authoring with pass verification |
|
|
262
|
+
|
|
263
|
+
### Skills (16)
|
|
264
|
+
|
|
265
|
+
Skills in `plugins/devs-marketplace/plugins/code-directive/skills/` provide domain-specific coding references:
|
|
266
|
+
|
|
267
|
+
`claude-agent-sdk` · `claude-code-headless` · `debugging` · `docker` · `docker-py` · `fastapi` · `git-forensics` · `performance-profiling` · `pydantic-ai` · `refactoring-patterns` · `security-checklist` · `skill-building` · `specification-writing` · `sqlite` · `svelte5` · `testing`
|
|
268
|
+
|
|
269
|
+
## Project Manager
|
|
270
|
+
|
|
271
|
+
The `setup-projects.sh` script auto-detects projects under `/workspaces/` and maintains a `projects.json` file for the [Project Manager](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) VS Code extension. It watches for new projects via `inotifywait` and updates the project list automatically.
|
|
211
272
|
|
|
212
273
|
## Essential Gotchas
|
|
213
274
|
|
|
@@ -25,7 +25,7 @@ When in <normal_mode>:
|
|
|
25
25
|
8. <response_guidelines>
|
|
26
26
|
|
|
27
27
|
If rules conflict, follow the highest-priority rule for the active mode
|
|
28
|
-
and explicitly note the conflict.
|
|
28
|
+
and explicitly note the conflict. Never silently violate a higher-priority rule.
|
|
29
29
|
</rule_precedence>
|
|
30
30
|
|
|
31
31
|
<operating_modes>
|
|
@@ -121,7 +121,13 @@ Main thread:
|
|
|
121
121
|
Subagents (via `Task`):
|
|
122
122
|
- Information gathering only
|
|
123
123
|
- Report findings; never decide or modify
|
|
124
|
-
-
|
|
124
|
+
- Core types (auto-redirected to enhanced custom agents):
|
|
125
|
+
- `Explore` → `explorer` (fast codebase search, haiku, read-only)
|
|
126
|
+
- `Plan` → `architect` (implementation planning, opus, read-only)
|
|
127
|
+
- `general-purpose` → `generalist` (multi-step tasks, inherit model)
|
|
128
|
+
- `Bash` → `bash-exec` (command execution, sonnet)
|
|
129
|
+
- `claude-code-guide` → `claude-guide` (Claude Code/SDK/API help, haiku)
|
|
130
|
+
- `statusline-setup` → `statusline-config` (status line setup, sonnet)
|
|
125
131
|
|
|
126
132
|
Agent Teams (when enabled):
|
|
127
133
|
- CRITICAL: Limit to 3-5 active teammates maximum based on task complexity
|
|
@@ -145,6 +151,55 @@ Failure handling:
|
|
|
145
151
|
- Surface errors clearly; never hide failures
|
|
146
152
|
</orchestration>
|
|
147
153
|
|
|
154
|
+
<specialist_agents>
|
|
155
|
+
Specialist agents are available as teammates via the Task tool. Prefer
|
|
156
|
+
delegating to a specialist over doing the work yourself when the task
|
|
157
|
+
matches their domain.
|
|
158
|
+
|
|
159
|
+
Agents:
|
|
160
|
+
- researcher — codebase & web research (sonnet, read-only)
|
|
161
|
+
- test-writer — writes test suites (opus, auto-verify)
|
|
162
|
+
- refactorer — safe code transformations (opus, tests after every edit)
|
|
163
|
+
- security-auditor — OWASP audit & secrets scan (sonnet, read-only)
|
|
164
|
+
- doc-writer — README, API docs, docstrings (opus)
|
|
165
|
+
- migrator — framework upgrades & version bumps (opus)
|
|
166
|
+
- git-archaeologist — git history investigation (haiku, read-only)
|
|
167
|
+
- dependency-analyst — outdated/vulnerable deps (haiku, read-only)
|
|
168
|
+
- spec-writer — EARS requirements & acceptance criteria (opus, read-only)
|
|
169
|
+
- perf-profiler — profiling & benchmarks (sonnet, read-only)
|
|
170
|
+
- debug-logs — log analysis & diagnostics (sonnet, read-only)
|
|
171
|
+
|
|
172
|
+
Skills (auto-suggested, also loadable via Skill tool):
|
|
173
|
+
- fastapi, sqlite, svelte5, docker, docker-py, pydantic-ai
|
|
174
|
+
- testing, debugging, claude-code-headless, claude-agent-sdk
|
|
175
|
+
- skill-building, refactoring-patterns, security-checklist
|
|
176
|
+
- git-forensics, specification-writing, performance-profiling
|
|
177
|
+
|
|
178
|
+
Built-in agent redirect:
|
|
179
|
+
All 6 built-in agent types (Explore, Plan, general-purpose, Bash,
|
|
180
|
+
claude-code-guide, statusline-setup) are automatically redirected to
|
|
181
|
+
enhanced custom agents via a PreToolUse hook. You can use either the
|
|
182
|
+
built-in name or the custom name — the redirect is transparent.
|
|
183
|
+
|
|
184
|
+
Team construction:
|
|
185
|
+
When building agent teams, prefer custom agents over generic
|
|
186
|
+
`generalist` teammates when the task aligns with a specialist's
|
|
187
|
+
domain. Custom agents carry frontloaded skills, safety hooks, and
|
|
188
|
+
tailored instructions that make them more effective and safer than
|
|
189
|
+
a generalist agent doing the same work.
|
|
190
|
+
|
|
191
|
+
Example team compositions:
|
|
192
|
+
- Feature build: researcher (investigate) + test-writer (tests) + doc-writer (docs)
|
|
193
|
+
- Security hardening: security-auditor (find issues) + dependency-analyst (deps)
|
|
194
|
+
- Codebase cleanup: refactorer (transform) + test-writer (coverage gaps)
|
|
195
|
+
- Migration project: researcher (research guides) + migrator (execute)
|
|
196
|
+
- Performance work: perf-profiler (measure) + refactorer (optimize)
|
|
197
|
+
|
|
198
|
+
When a user's request clearly falls within a specialist's domain,
|
|
199
|
+
suggest delegation. Do not force it — the user may prefer to work
|
|
200
|
+
directly.
|
|
201
|
+
</specialist_agents>
|
|
202
|
+
|
|
148
203
|
<structural_search>
|
|
149
204
|
Prefer structural tools over text search when syntax matters:
|
|
150
205
|
|
|
@@ -258,6 +313,7 @@ Verify before assuming:
|
|
|
258
313
|
or approach — ASK. Do not pick a default.
|
|
259
314
|
- Do not assume file paths — read the filesystem to confirm.
|
|
260
315
|
- Do not assume platform capabilities — research first.
|
|
316
|
+
- Never fabricate file paths, API signatures, tool behavior, or external facts. Verify or ask.
|
|
261
317
|
|
|
262
318
|
Read before writing:
|
|
263
319
|
- Before creating or modifying any file, read the target directory and
|
|
@@ -286,6 +342,11 @@ No silent deviations:
|
|
|
286
342
|
before doing something different.
|
|
287
343
|
- Never silently substitute an easier approach.
|
|
288
344
|
- Never silently skip a step because it seems hard or uncertain.
|
|
345
|
+
|
|
346
|
+
When an approach fails:
|
|
347
|
+
- Diagnose the cause before retrying.
|
|
348
|
+
- Try an alternative strategy; do not repeat the failed path.
|
|
349
|
+
- Surface the failure and revised approach to the user.
|
|
289
350
|
</execution_discipline>
|
|
290
351
|
|
|
291
352
|
<code_directives>
|
|
@@ -9,19 +9,30 @@
|
|
|
9
9
|
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001",
|
|
10
10
|
"BASH_DEFAULT_TIMEOUT_MS": "240000",
|
|
11
11
|
"BASH_MAX_TIMEOUT_MS": "600000",
|
|
12
|
-
"
|
|
13
|
-
"CLAUDE_CODE_MAX_OUTPUT_TOKENS": "128000",
|
|
12
|
+
"CLAUDE_CODE_MAX_OUTPUT_TOKENS": "64000",
|
|
14
13
|
"MAX_MCP_OUTPUT_TOKENS": "10000",
|
|
15
14
|
"MAX_THINKING_TOKENS": "63999",
|
|
16
15
|
"MCP_TIMEOUT": "120000",
|
|
17
16
|
"MCP_TOOL_TIMEOUT": "30000",
|
|
18
|
-
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": 95,
|
|
17
|
+
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "95",
|
|
19
18
|
"CLAUDE_CODE_SHELL": "zsh",
|
|
20
|
-
"FORCE_AUTOUPDATE_PLUGINS":
|
|
19
|
+
"FORCE_AUTOUPDATE_PLUGINS": "1",
|
|
20
|
+
|
|
21
21
|
"ENABLE_TOOL_SEARCH": "auto:5",
|
|
22
22
|
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1",
|
|
23
23
|
"CLAUDE_CODE_EFFORT_LEVEL": "high",
|
|
24
|
-
"CLAUDE_CODE_ENABLE_TASKS": "true"
|
|
24
|
+
"CLAUDE_CODE_ENABLE_TASKS": "true",
|
|
25
|
+
"CLAUDE_CODE_DISABLE_AUTO_MEMORY": "0",
|
|
26
|
+
"ENABLE_CLAUDE_CODE_SM_COMPACT": "1",
|
|
27
|
+
"CLAUDE_CODE_FORCE_GLOBAL_CACHE": "1",
|
|
28
|
+
"CLAUDE_CODE_PLAN_MODE_INTERVIEW_PHASE": "true",
|
|
29
|
+
"CLAUDE_CODE_PLAN_V2_AGENT_COUNT": "3",
|
|
30
|
+
"CLAUDE_CODE_PLAN_MODE_REQUIRED": "true",
|
|
31
|
+
|
|
32
|
+
"CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY": "5",
|
|
33
|
+
"CLAUDE_CODE_MAX_RETRIES": "1",
|
|
34
|
+
"BASH_MAX_OUTPUT_LENGTH": "15000",
|
|
35
|
+
"TASK_MAX_OUTPUT_LENGTH": "64000"
|
|
25
36
|
},
|
|
26
37
|
"teammateMode": "auto",
|
|
27
38
|
"effortLevel": "high",
|
|
@@ -45,7 +56,15 @@
|
|
|
45
56
|
"command": "/usr/local/bin/ccstatusline-wrapper"
|
|
46
57
|
},
|
|
47
58
|
"enabledPlugins": {
|
|
48
|
-
"frontend-design@claude-code-plugins": true
|
|
59
|
+
"frontend-design@claude-code-plugins": true,
|
|
60
|
+
"codeforge-lsp@devs-marketplace": true,
|
|
61
|
+
"ticket-workflow@devs-marketplace": true,
|
|
62
|
+
"notify-hook@devs-marketplace": true,
|
|
63
|
+
"dangerous-command-blocker@devs-marketplace": true,
|
|
64
|
+
"protected-files-guard@devs-marketplace": true,
|
|
65
|
+
"auto-formatter@devs-marketplace": true,
|
|
66
|
+
"auto-linter@devs-marketplace": true,
|
|
67
|
+
"code-directive@devs-marketplace": true
|
|
49
68
|
},
|
|
50
69
|
"autoUpdatesChannel": "latest"
|
|
51
70
|
}
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"./features/agent-browser",
|
|
25
25
|
"./features/claude-monitor",
|
|
26
26
|
"./features/ccusage",
|
|
27
|
+
"./features/ccburn",
|
|
27
28
|
"./features/ccstatusline",
|
|
28
29
|
"./features/ast-grep",
|
|
29
30
|
"./features/tree-sitter",
|
|
@@ -56,6 +57,11 @@
|
|
|
56
57
|
"installer": "uv",
|
|
57
58
|
"username": "automatic"
|
|
58
59
|
},
|
|
60
|
+
"./features/ccburn": {
|
|
61
|
+
"version": "latest",
|
|
62
|
+
"shells": "both",
|
|
63
|
+
"username": "automatic"
|
|
64
|
+
},
|
|
59
65
|
"./features/ccstatusline": {
|
|
60
66
|
"username": "automatic"
|
|
61
67
|
},
|
|
@@ -89,14 +95,24 @@
|
|
|
89
95
|
},
|
|
90
96
|
"terminal.integrated.defaultProfile.linux": "bash",
|
|
91
97
|
"terminal.integrated.enableBell": true,
|
|
98
|
+
"terminal.integrated.commandsToSkipShell": [
|
|
99
|
+
"-workbench.action.quickOpen",
|
|
100
|
+
"-workbench.action.terminal.focusFind"
|
|
101
|
+
],
|
|
92
102
|
"remote.extensionKind": {
|
|
93
103
|
"wenbopan.vscode-terminal-osc-notifier": ["ui"]
|
|
94
|
-
}
|
|
104
|
+
},
|
|
105
|
+
"projectManager.git.baseFolders": ["/workspaces"],
|
|
106
|
+
"projectManager.git.maxDepthRecursion": 1,
|
|
107
|
+
"projectManager.showProjectNameInStatusBar": true,
|
|
108
|
+
"projectManager.openInNewWindowWhenClickingInStatusBar": false,
|
|
109
|
+
"projectManager.projectsLocation": "/workspaces/.config/project-manager"
|
|
95
110
|
},
|
|
96
111
|
"extensions": [
|
|
97
112
|
"wenbopan.vscode-terminal-osc-notifier",
|
|
98
113
|
"GitHub.vscode-github-actions",
|
|
99
|
-
"fabiospampinato.vscode-todo-plus"
|
|
114
|
+
"fabiospampinato.vscode-todo-plus",
|
|
115
|
+
"alefragnani.project-manager"
|
|
100
116
|
]
|
|
101
117
|
}
|
|
102
118
|
},
|
|
@@ -4,11 +4,25 @@ This directory contains DevContainer Features for AI coding agent environments.
|
|
|
4
4
|
|
|
5
5
|
## Available Features
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
| Feature | Description | Status |
|
|
8
|
+
|---------|-------------|--------|
|
|
9
|
+
| `tmux` | Terminal multiplexer with Catppuccin theme for Agent Teams | ✅ |
|
|
10
|
+
| `agent-browser` | Headless browser automation for AI agents | ✅ |
|
|
11
|
+
| `claude-monitor` | Real-time token usage monitoring | ✅ |
|
|
12
|
+
| `ccusage` | Token usage analytics CLI | ✅ |
|
|
13
|
+
| `ccburn` | Visual token burn rate tracker with pace indicators | ✅ New |
|
|
14
|
+
| `ccstatusline` | 6-line powerline status display (v1.1.0) | ✅ |
|
|
15
|
+
| `ast-grep` | Structural code search using AST patterns | ✅ |
|
|
16
|
+
| `tree-sitter` | Parser with JS/TS/Python grammars | ✅ |
|
|
17
|
+
| `lsp-servers` | Pyright and TypeScript language servers | ✅ |
|
|
18
|
+
| `biome` | Fast JS/TS/JSON/CSS formatter | ✅ |
|
|
19
|
+
| `notify-hook` | Desktop notifications on Claude completion | ✅ |
|
|
20
|
+
| `splitrail` | Git worktree management for parallel branches | ✅ |
|
|
21
|
+
| `mcp-qdrant` | Qdrant vector database MCP server | ✅ (optional) |
|
|
22
|
+
| `mcp-reasoner` | Enhanced AI reasoning MCP server | ✅ (optional) |
|
|
23
|
+
| `claude-code` | Fallback config for Anthropic's official Claude Code feature | ✅ (config only) |
|
|
24
|
+
|
|
25
|
+
> **Note**: Claude Code itself is installed via `ghcr.io/anthropics/devcontainer-features/claude-code:1` (Anthropic's official feature). The local `claude-code/` directory provides only fallback configuration.
|
|
12
26
|
|
|
13
27
|
## Feature Structure
|
|
14
28
|
|
|
@@ -90,9 +104,9 @@ CodeForge modules are being converted to DevContainer Features:
|
|
|
90
104
|
| Old Module | New Feature | Status |
|
|
91
105
|
|-----------|-------------|---------|
|
|
92
106
|
| mcp_qdrant | mcp-qdrant | ✅ Complete |
|
|
107
|
+
| mcp_reasoner | mcp-reasoner | ✅ Complete |
|
|
93
108
|
| mcp_browser | mcp-browser | 🔜 Planned |
|
|
94
109
|
| mcp_sourcerer | mcp-sourcerer | 🔜 Planned |
|
|
95
|
-
| mcp_reasoner | mcp-reasoner | 🔜 Planned |
|
|
96
110
|
| mcp_obsidian | mcp-obsidian | 🔜 Planned |
|
|
97
111
|
| mcp_code_runner | mcp-code-runner | 🔜 Planned |
|
|
98
112
|
|
|
@@ -110,4 +124,4 @@ Features are part of the CodeForge project. See main repository for contribution
|
|
|
110
124
|
---
|
|
111
125
|
|
|
112
126
|
**Status**: Active Development
|
|
113
|
-
**Last Updated**:
|
|
127
|
+
**Last Updated**: 2026-02-08
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# ccburn - Visual Token Burn Rate Tracker
|
|
2
|
+
|
|
3
|
+
Real-time burn-up charts and pace tracking for Claude Code usage limits.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Full TUI dashboard (auto-detects active limit)
|
|
9
|
+
ccburn
|
|
10
|
+
|
|
11
|
+
# 5-hour rolling session limit
|
|
12
|
+
ccburn session
|
|
13
|
+
|
|
14
|
+
# 7-day weekly limit
|
|
15
|
+
ccburn weekly
|
|
16
|
+
|
|
17
|
+
# Single-line output for status bars
|
|
18
|
+
ccburn --compact --once
|
|
19
|
+
|
|
20
|
+
# JSON output for scripting
|
|
21
|
+
ccburn --json --once
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Features
|
|
25
|
+
|
|
26
|
+
- **Burn-up charts** — Live-updating terminal graphics showing usage over time
|
|
27
|
+
- **Pace indicators** — 🧊 Cool (behind pace) | 🔥 On pace | 🚨 Too hot (ahead)
|
|
28
|
+
- **Burn rate** — %/hour via linear regression, with trend classification
|
|
29
|
+
- **Predictions** — Time-to-100% estimates and projection lines
|
|
30
|
+
- **Multiple limits** — Session (5h), Weekly (7d), Weekly Sonnet, Monthly
|
|
31
|
+
- **SQLite history** — 7-day retention at `~/.ccburn/history.db`
|
|
32
|
+
- **Compact mode** — Single-line output for embedding in statuslines
|
|
33
|
+
|
|
34
|
+
## Display Modes
|
|
35
|
+
|
|
36
|
+
| Mode | Flag | Description |
|
|
37
|
+
|------|------|-------------|
|
|
38
|
+
| Full TUI | (default) | Interactive dashboard with charts and gauges |
|
|
39
|
+
| Compact | `--compact` | Single line: `Session: 🧊 45% (2h14m) \| Weekly: 🔥 12%` |
|
|
40
|
+
| JSON | `--json` | Structured output with all metrics |
|
|
41
|
+
| Once | `--once` | Single snapshot, no live updates |
|
|
42
|
+
|
|
43
|
+
## Statusline Integration
|
|
44
|
+
|
|
45
|
+
This feature installs a wrapper at `/usr/local/bin/ccburn-statusline` for use with
|
|
46
|
+
ccstatusline's `custom-command` widget. The wrapper handles:
|
|
47
|
+
|
|
48
|
+
- Missing OAuth credentials (shows "awaiting auth")
|
|
49
|
+
- First-run npx caching (shows "unavailable" if download fails)
|
|
50
|
+
- API errors (graceful fallback messages)
|
|
51
|
+
|
|
52
|
+
## Requirements
|
|
53
|
+
|
|
54
|
+
- Node.js (via devcontainer node feature)
|
|
55
|
+
- Claude Code OAuth credentials at `~/.claude/.credentials.json`
|
|
56
|
+
|
|
57
|
+
## Documentation
|
|
58
|
+
|
|
59
|
+
- [GitHub Repository](https://github.com/JuanjoFuchs/ccburn)
|
|
60
|
+
- [ccburn Specification](https://github.com/JuanjoFuchs/ccburn/blob/main/docs/ccburn-spec.md)
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "ccburn",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"name": "ccburn - Visual Token Burn Rate Tracker",
|
|
5
|
+
"description": "Installs ccburn CLI for real-time burn-up charts and pace tracking of Claude Code usage limits",
|
|
6
|
+
"maintainer": "AnExiledDev",
|
|
7
|
+
"documentationURL": "https://github.com/JuanjoFuchs/ccburn",
|
|
8
|
+
"options": {
|
|
9
|
+
"version": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "ccburn version to use (e.g., 'latest', '0.4.2')",
|
|
12
|
+
"default": "latest"
|
|
13
|
+
},
|
|
14
|
+
"shells": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"description": "Which shells to configure (bash, zsh, or both)",
|
|
17
|
+
"default": "both",
|
|
18
|
+
"enum": [
|
|
19
|
+
"bash",
|
|
20
|
+
"zsh",
|
|
21
|
+
"both"
|
|
22
|
+
],
|
|
23
|
+
"proposals": [
|
|
24
|
+
"bash",
|
|
25
|
+
"zsh",
|
|
26
|
+
"both"
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
"username": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"description": "Container user to install for",
|
|
32
|
+
"default": "automatic"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"installsAfter": [
|
|
36
|
+
"ghcr.io/devcontainers/features/node:1"
|
|
37
|
+
]
|
|
38
|
+
}
|