claudepod 1.2.2 → 1.3.1
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/CHANGELOG.md +179 -50
- package/.devcontainer/CLAUDE.md +24 -7
- package/.devcontainer/README.md +2 -0
- package/.devcontainer/config/main-system-prompt.md +357 -81
- package/.devcontainer/config/settings.json +6 -3
- package/.devcontainer/devcontainer.json +17 -5
- package/.devcontainer/features/agent-browser/README.md +65 -0
- package/.devcontainer/features/agent-browser/devcontainer-feature.json +23 -0
- package/.devcontainer/features/agent-browser/install.sh +72 -0
- package/.devcontainer/features/lsp-servers/devcontainer-feature.json +8 -2
- package/.devcontainer/features/lsp-servers/install.sh +25 -1
- package/.devcontainer/features/notify-hook/README.md +86 -0
- package/.devcontainer/features/notify-hook/devcontainer-feature.json +23 -0
- package/.devcontainer/features/notify-hook/install.sh +38 -0
- package/.devcontainer/plugins/devs-marketplace/.claude-plugin/marketplace.json +99 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/hooks/hooks.json +17 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/scripts/format-file.py +101 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/hooks/hooks.json +17 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/scripts/lint-file.py +137 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/claudepod-lsp/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/hooks/hooks.json +17 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/scripts/block-dangerous.py +110 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/notify-hook/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/notify-hook/hooks/hooks.json +16 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/planning-reminder/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/planning-reminder/hooks/hooks.json +17 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/.claude-plugin/plugin.json +7 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/hooks/hooks.json +17 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected.py +108 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/commands/ticket:create-pr.md +337 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/commands/ticket:new.md +166 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/commands/ticket:review-commit.md +290 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/commands/ticket:work.md +257 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/plugin.json +8 -0
- package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/system-prompt.md +184 -0
- package/.devcontainer/scripts/setup-aliases.sh +41 -13
- package/.devcontainer/scripts/setup-plugins.sh +35 -13
- package/.devcontainer/scripts/setup.sh +1 -3
- package/README.md +37 -0
- package/package.json +1 -2
- package/setup.js +14 -6
- package/.devcontainer/scripts/setup-lsp.sh +0 -20
|
@@ -1,68 +1,197 @@
|
|
|
1
1
|
# ClaudePod Devcontainer Changelog
|
|
2
2
|
|
|
3
|
-
## [2025-01-
|
|
3
|
+
## [v1.3.1] - 2025-01-24
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- **Plugin installation**: Fixed invalid plugin.json schema causing installation failures
|
|
8
|
+
- Removed `$schema`, `category`, `version`, `lspServers` keys from individual plugin.json files
|
|
9
|
+
- These fields now correctly reside only in `marketplace.json`
|
|
10
|
+
- **setup-plugins.sh**: Fixed path resolution for marketplace discovery
|
|
11
|
+
- Changed from `${containerWorkspaceFolder:-.}` to `SCRIPT_DIR` relative path
|
|
12
|
+
- Script now works correctly regardless of working directory
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
|
|
16
|
+
- **Consolidated LSP setup**: Merged `setup-lsp.sh` into `setup-plugins.sh`
|
|
17
|
+
- Single script now handles both official and local marketplace plugins
|
|
18
|
+
- Removed `SETUP_LSP` environment variable (no longer needed)
|
|
19
|
+
- **settings.json**: Updated Claude Code configuration
|
|
20
|
+
- Increased `MAX_THINKING_TOKENS` from 14999 to 63999
|
|
21
|
+
- Added `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`: 80 (auto-compact at 80% context)
|
|
22
|
+
- Added `CLAUDE_CODE_SHELL`: zsh
|
|
23
|
+
- Added `FORCE_AUTOUPDATE_PLUGINS`: true
|
|
24
|
+
- Added `autoUpdatesChannel`: "latest"
|
|
25
|
+
|
|
26
|
+
### Removed
|
|
27
|
+
|
|
28
|
+
- **setup-lsp.sh**: Deleted (functionality consolidated into setup-plugins.sh)
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## [v1.3.0] - 2025-01-24
|
|
4
33
|
|
|
5
34
|
### Added
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
35
|
+
|
|
36
|
+
#### Code Quality Hooks
|
|
37
|
+
- **dangerous-command-blocker**: PreToolUse hook blocks dangerous bash commands
|
|
38
|
+
- Blocks `rm -rf /`, `rm -rf ~`, `sudo rm`, `chmod 777`
|
|
39
|
+
- Blocks `git push --force` to main/master
|
|
40
|
+
- Blocks writes to system directories (`/usr`, `/etc`, `/bin`)
|
|
41
|
+
- Blocks disk formatting (`mkfs.*`, `dd of=/dev/`)
|
|
42
|
+
- **protected-files-guard**: PreToolUse hook blocks modifications to sensitive files
|
|
43
|
+
- Blocks `.env`, `.env.*` environment files
|
|
44
|
+
- Blocks `.git/` directory
|
|
45
|
+
- Blocks lock files (`package-lock.json`, `yarn.lock`, `poetry.lock`, etc.)
|
|
46
|
+
- Blocks certificates/keys (`.pem`, `.key`, `.crt`)
|
|
47
|
+
- Blocks credential files and auth directories (`.ssh/`, `.aws/`)
|
|
48
|
+
- **auto-formatter**: PostToolUse hook auto-formats edited files
|
|
49
|
+
- Python files via Black (`/usr/local/py-utils/bin/black`)
|
|
50
|
+
- Go files via gofmt (`/usr/local/go/bin/gofmt`)
|
|
51
|
+
- **auto-linter**: PostToolUse hook auto-lints edited files
|
|
52
|
+
- Python files via Pyright with JSON output parsing
|
|
53
|
+
- **planning-reminder**: PreToolUse hook encourages plan-before-implement workflow
|
|
54
|
+
|
|
55
|
+
#### Features
|
|
56
|
+
- **notify-hook feature**: Desktop notifications when Claude finishes responding
|
|
57
|
+
- OSC escape sequences for terminal notification support
|
|
58
|
+
- Optional audio bell
|
|
59
|
+
- VS Code extension recommendation for terminal notifications
|
|
60
|
+
- **agent-browser feature**: Headless browser automation CLI for AI agents
|
|
61
|
+
- Accessibility tree snapshots for AI navigation
|
|
62
|
+
- Screenshots and PDF capture
|
|
63
|
+
- Element interaction and cookie management
|
|
64
|
+
- **Go LSP (gopls)**: Full Go language server support
|
|
65
|
+
- Added `gopls` to claudepod-lsp plugin configuration
|
|
66
|
+
- Added `goplsVersion` option to lsp-servers feature
|
|
67
|
+
- Supports `.go`, `.mod`, `.sum` file extensions
|
|
68
|
+
- **Go language**: Added `ghcr.io/devcontainers/features/go:1` feature
|
|
69
|
+
|
|
70
|
+
#### Plugins
|
|
71
|
+
- **ticket-workflow plugin**: EARS-based ticket workflow with GitHub integration
|
|
72
|
+
- `/ticket:new` - Transform requirements into EARS-formatted GitHub issues
|
|
73
|
+
- `/ticket:work` - Create technical implementation plans from tickets
|
|
74
|
+
- `/ticket:review-commit` - Thorough code review with requirements verification
|
|
75
|
+
- `/ticket:create-pr` - Create PRs with aggressive security/architecture review
|
|
76
|
+
- **notify-hook plugin**: Claude Code hook integration for completion notifications
|
|
77
|
+
- **claudepod-lsp plugin.json**: Proper plugin structure for LSP servers
|
|
78
|
+
|
|
79
|
+
#### Commands & Aliases
|
|
80
|
+
- **ccraw alias**: Runs vanilla Claude Code without any config
|
|
81
|
+
- Bypasses the function override via `command claude`
|
|
82
|
+
- Useful for debugging or running without custom system prompt
|
|
83
|
+
|
|
84
|
+
#### Documentation
|
|
85
|
+
- **System prompt**: Added `<tools_reference>` section with all available tools
|
|
86
|
+
- **System prompt**: Added `<browser_automation>` section with usage guidance
|
|
87
|
+
|
|
88
|
+
### Changed
|
|
89
|
+
|
|
90
|
+
- **claude command**: Now behaves the same as `cc` (auto-creates local config)
|
|
91
|
+
- Uses `command claude` internally to call the actual binary
|
|
92
|
+
- Both `claude` and `cc` auto-setup `.claude/system-prompt.md` and `.claude/settings.json`
|
|
93
|
+
- **Container name**: Now includes project folder name for multi-project clarity
|
|
94
|
+
- Format: `ClaudePod - ${localWorkspaceFolderBasename}`
|
|
95
|
+
- **setup-lsp.sh**: Replaced hard-coded plugin list with dynamic discovery
|
|
96
|
+
- Now reads all plugins from `marketplace.json` using `jq`
|
|
97
|
+
- Automatically installs new plugins when added to marketplace
|
|
98
|
+
- **System prompt**: Updated to use correct Claude Code tool names
|
|
99
|
+
- Fixed plan mode references: `PlanMode` → `EnterPlanMode` / `ExitPlanMode`
|
|
100
|
+
- Added explicit tool names throughout directives
|
|
101
|
+
- **Plugin installation**: Reduced from 7 plugins to 1 official plugin (frontend-design skill)
|
|
102
|
+
|
|
103
|
+
### Removed
|
|
104
|
+
|
|
105
|
+
- `code-review@claude-plugins-official` (command plugin)
|
|
106
|
+
- `commit-commands@claude-plugins-official` (command plugin)
|
|
107
|
+
- `pr-review-toolkit@claude-plugins-official` (command + agent plugin)
|
|
108
|
+
- `code-simplifier` npx installation block
|
|
19
109
|
|
|
20
110
|
### Files Created
|
|
21
|
-
|
|
22
|
-
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
.devcontainer/
|
|
114
|
+
├── features/
|
|
115
|
+
│ ├── agent-browser/
|
|
116
|
+
│ │ ├── devcontainer-feature.json
|
|
117
|
+
│ │ ├── install.sh
|
|
118
|
+
│ │ └── README.md
|
|
119
|
+
│ └── notify-hook/
|
|
120
|
+
│ ├── devcontainer-feature.json
|
|
121
|
+
│ ├── install.sh
|
|
122
|
+
│ └── README.md
|
|
123
|
+
└── plugins/devs-marketplace/plugins/
|
|
124
|
+
├── auto-formatter/
|
|
125
|
+
│ ├── .claude-plugin/plugin.json
|
|
126
|
+
│ ├── hooks/hooks.json
|
|
127
|
+
│ └── scripts/format-file.py
|
|
128
|
+
├── auto-linter/
|
|
129
|
+
│ ├── .claude-plugin/plugin.json
|
|
130
|
+
│ ├── hooks/hooks.json
|
|
131
|
+
│ └── scripts/lint-file.py
|
|
132
|
+
├── claudepod-lsp/
|
|
133
|
+
│ └── .claude-plugin/plugin.json
|
|
134
|
+
├── dangerous-command-blocker/
|
|
135
|
+
│ ├── .claude-plugin/plugin.json
|
|
136
|
+
│ ├── hooks/hooks.json
|
|
137
|
+
│ └── scripts/block-dangerous.py
|
|
138
|
+
├── notify-hook/
|
|
139
|
+
│ ├── .claude-plugin/plugin.json
|
|
140
|
+
│ └── hooks/hooks.json
|
|
141
|
+
├── planning-reminder/
|
|
142
|
+
│ ├── .claude-plugin/plugin.json
|
|
143
|
+
│ └── hooks/hooks.json
|
|
144
|
+
├── protected-files-guard/
|
|
145
|
+
│ ├── .claude-plugin/plugin.json
|
|
146
|
+
│ ├── hooks/hooks.json
|
|
147
|
+
│ └── scripts/guard-protected.py
|
|
148
|
+
└── ticket-workflow/
|
|
149
|
+
└── .claude-plugin/
|
|
150
|
+
├── plugin.json
|
|
151
|
+
├── system-prompt.md
|
|
152
|
+
└── commands/
|
|
153
|
+
├── ticket:new.md
|
|
154
|
+
├── ticket:work.md
|
|
155
|
+
├── ticket:review-commit.md
|
|
156
|
+
└── ticket:create-pr.md
|
|
157
|
+
```
|
|
23
158
|
|
|
24
159
|
### Files Modified
|
|
25
|
-
|
|
160
|
+
|
|
161
|
+
- `.devcontainer/devcontainer.json` - Added features, VS Code settings, dynamic name
|
|
162
|
+
- `.devcontainer/config/main-system-prompt.md` - Tools reference, browser automation
|
|
163
|
+
- `.devcontainer/scripts/setup-aliases.sh` - Claude function override, ccraw alias
|
|
164
|
+
- `.devcontainer/scripts/setup-lsp.sh` - Dynamic plugin discovery
|
|
165
|
+
- `.devcontainer/scripts/setup-plugins.sh` - Trimmed to frontend-design only
|
|
166
|
+
- `.devcontainer/features/lsp-servers/install.sh` - Added gopls installation
|
|
167
|
+
- `.devcontainer/features/lsp-servers/devcontainer-feature.json` - Added goplsVersion
|
|
168
|
+
- `.devcontainer/plugins/devs-marketplace/.claude-plugin/marketplace.json` - All new plugins
|
|
169
|
+
- `.devcontainer/CLAUDE.md` - Updated plugin docs, local marketplace section
|
|
170
|
+
- `.devcontainer/README.md` - Added agent-browser, Go to tools tables
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## [v1.2.3] - 2025-01-19
|
|
175
|
+
|
|
176
|
+
### Changed
|
|
177
|
+
- Added `--force` flag support
|
|
178
|
+
- Removed devpod references
|
|
26
179
|
|
|
27
180
|
---
|
|
28
181
|
|
|
29
|
-
## [2025-01-19
|
|
182
|
+
## [v1.2.0] - 2025-01-19
|
|
30
183
|
|
|
31
184
|
### Added
|
|
32
|
-
- **GitHub CLI**: Added `ghcr.io/devcontainers/features/github-cli:1` feature
|
|
33
|
-
- **Official Anthropic Plugins**: New `setup-plugins.sh` script
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
- `@anthropics/claude-plugins-official/typescript-lsp`
|
|
39
|
-
- `@anthropics/claude-plugins-official/pyright-lsp`
|
|
40
|
-
- `@anthropics/claude-plugins-official/code-simplifier`
|
|
41
|
-
- **SETUP_PLUGINS** environment variable to control plugin installation
|
|
185
|
+
- **GitHub CLI**: Added `ghcr.io/devcontainers/features/github-cli:1` feature
|
|
186
|
+
- **Official Anthropic Plugins**: New `setup-plugins.sh` script
|
|
187
|
+
- **SETUP_PLUGINS** environment variable
|
|
188
|
+
- **GitHub CLI Credential Persistence**: `GH_CONFIG_DIR=/workspaces/.gh`
|
|
189
|
+
- **README.md**: Comprehensive documentation
|
|
190
|
+
- **CLAUDE.md**: Development guide for Claude Code
|
|
42
191
|
|
|
43
192
|
### Changed
|
|
44
|
-
- **Plan Mode Default**: Changed `defaultMode` from `"dontAsk"` to `"plan"`
|
|
45
|
-
- **cc Command**: Replaced simple alias with smart function
|
|
46
|
-
- Checks for `.claude/system-prompt.md` in current directory
|
|
47
|
-
- Auto-creates from `/workspaces/.devcontainer/config/main-system-prompt.md` if missing
|
|
48
|
-
- Enables per-project system prompt customization
|
|
193
|
+
- **Plan Mode Default**: Changed `defaultMode` from `"dontAsk"` to `"plan"`
|
|
194
|
+
- **cc Command**: Replaced simple alias with smart function
|
|
49
195
|
|
|
50
196
|
### Removed
|
|
51
197
|
- **Specwright**: Completely removed (setup script, aliases, plugin files, ORCHESTRATOR.md)
|
|
52
|
-
|
|
53
|
-
### Files Modified
|
|
54
|
-
- `/workspaces/.devcontainer/devcontainer.json` - Added GitHub CLI feature
|
|
55
|
-
- `/workspaces/.devcontainer/config/settings.json` - Set defaultMode to plan
|
|
56
|
-
- `/workspaces/.devcontainer/scripts/setup-aliases.sh` - Replaced cc alias with function
|
|
57
|
-
- `/workspaces/.devcontainer/.env` - Removed specwright, added plugins
|
|
58
|
-
- `/workspaces/.devcontainer/scripts/setup.sh` - Removed specwright, added setup-plugins.sh
|
|
59
|
-
|
|
60
|
-
### Files Deleted
|
|
61
|
-
- `/workspaces/.devcontainer/scripts/setup-specwright.sh`
|
|
62
|
-
- `/workspaces/.claude/ORCHESTRATOR.md`
|
|
63
|
-
- `/workspaces/.claude/plugins/marketplaces/specwright-marketplace/`
|
|
64
|
-
- `/workspaces/.claude/plugins/cache/specwright-marketplace/`
|
|
65
|
-
|
|
66
|
-
### Files Created
|
|
67
|
-
- `/workspaces/.devcontainer/scripts/setup-plugins.sh` - Plugin installer script
|
|
68
|
-
- `/workspaces/.devcontainer/CHANGELOG.md` - This changelog
|
package/.devcontainer/CLAUDE.md
CHANGED
|
@@ -13,6 +13,8 @@ ClaudePod devcontainer for AI-assisted development with Claude Code.
|
|
|
13
13
|
│ │ ├── settings.json # Claude Code settings
|
|
14
14
|
│ │ └── main-system-prompt.md
|
|
15
15
|
│ ├── features/ # Custom devcontainer features
|
|
16
|
+
│ ├── plugins/ # Local plugin marketplace
|
|
17
|
+
│ │ └── devs-marketplace/
|
|
16
18
|
│ └── scripts/ # Setup scripts
|
|
17
19
|
├── .claude/ # Runtime Claude config (created on first run)
|
|
18
20
|
│ ├── settings.json # Active settings
|
|
@@ -34,8 +36,9 @@ ClaudePod devcontainer for AI-assisted development with Claude Code.
|
|
|
34
36
|
|
|
35
37
|
| Command | Purpose |
|
|
36
38
|
|---------|---------|
|
|
37
|
-
| `
|
|
38
|
-
| `
|
|
39
|
+
| `claude` | Run Claude Code with auto-configuration (creates local `.claude/` if needed) |
|
|
40
|
+
| `cc` | Shorthand for `claude` with config |
|
|
41
|
+
| `ccraw` | Vanilla Claude Code without any config (bypasses function override) |
|
|
39
42
|
| `ccusage` | Analyze token usage history |
|
|
40
43
|
| `gh` | GitHub CLI for repo operations |
|
|
41
44
|
| `uv` | Fast Python package manager |
|
|
@@ -69,17 +72,31 @@ Scripts in `./scripts/` run via `postStartCommand`:
|
|
|
69
72
|
| `setup.sh` | Main orchestrator |
|
|
70
73
|
| `setup-config.sh` | Copies config files to `/workspaces/.claude/` |
|
|
71
74
|
| `setup-aliases.sh` | Creates `cc` shell function |
|
|
72
|
-
| `setup-lsp.sh` | Installs LSP plugins |
|
|
75
|
+
| `setup-lsp.sh` | Installs LSP plugins from local marketplace |
|
|
73
76
|
| `setup-plugins.sh` | Installs official Anthropic plugins |
|
|
74
77
|
|
|
75
78
|
## Installed Plugins
|
|
76
79
|
|
|
77
80
|
Automatically installed on container start:
|
|
78
81
|
|
|
79
|
-
- `frontend-design@claude-plugins-official`
|
|
80
|
-
- `
|
|
81
|
-
|
|
82
|
-
|
|
82
|
+
- `frontend-design@claude-plugins-official` (skill)
|
|
83
|
+
- `claudepod-lsp@devs-marketplace` (LSP for Python + TypeScript/JavaScript)
|
|
84
|
+
|
|
85
|
+
### Local Marketplace
|
|
86
|
+
|
|
87
|
+
The `devs-marketplace` in `plugins/` provides locally-managed plugins:
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
plugins/devs-marketplace/
|
|
91
|
+
├── .claude-plugin/
|
|
92
|
+
│ └── marketplace.json # Marketplace manifest
|
|
93
|
+
└── plugins/
|
|
94
|
+
└── claudepod-lsp/ # Combined LSP plugin
|
|
95
|
+
└── .claude-plugin/
|
|
96
|
+
└── plugin.json
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
This gives full control over LSP configuration without external dependencies.
|
|
83
100
|
|
|
84
101
|
## Environment Variables
|
|
85
102
|
|
package/.devcontainer/README.md
CHANGED
|
@@ -108,6 +108,7 @@ GitHub CLI credentials are automatically persisted across container rebuilds. Th
|
|
|
108
108
|
| Python 3.14 | Base language runtime |
|
|
109
109
|
| Node.js LTS | JavaScript runtime |
|
|
110
110
|
| TypeScript | Via Node.js |
|
|
111
|
+
| Go | Latest stable via devcontainer feature |
|
|
111
112
|
|
|
112
113
|
### Package Managers
|
|
113
114
|
| Tool | Description |
|
|
@@ -124,6 +125,7 @@ GitHub CLI credentials are automatically persisted across container rebuilds. Th
|
|
|
124
125
|
| `git` | Version control |
|
|
125
126
|
| `jq` | JSON processor |
|
|
126
127
|
| `curl` | HTTP client |
|
|
128
|
+
| `agent-browser` | Headless browser automation for AI agents |
|
|
127
129
|
|
|
128
130
|
### Code Intelligence
|
|
129
131
|
| Tool | Description |
|