agentk8 1.0.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/LICENSE +21 -0
- package/README.md +222 -0
- package/agentk +481 -0
- package/bin/agentk-wrapper.js +35 -0
- package/bin/postinstall.js +97 -0
- package/lib/core.sh +281 -0
- package/lib/ipc.sh +501 -0
- package/lib/spawn.sh +398 -0
- package/lib/ui.sh +415 -0
- package/lib/visual.sh +349 -0
- package/modes/dev/engineer.md +118 -0
- package/modes/dev/orchestrator.md +110 -0
- package/modes/dev/security.md +221 -0
- package/modes/dev/tester.md +161 -0
- package/modes/ml/data-engineer.md +244 -0
- package/modes/ml/evaluator.md +265 -0
- package/modes/ml/ml-engineer.md +239 -0
- package/modes/ml/orchestrator.md +145 -0
- package/modes/ml/researcher.md +198 -0
- package/modes/shared/scout.md +270 -0
- package/package.json +49 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Aditya Katiyar
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
# AGENT-K
|
|
2
|
+
|
|
3
|
+
**Multi-Agent Claude Code Terminal Suite**
|
|
4
|
+
|
|
5
|
+
Orchestrate multiple specialized Claude agents for software development and ML research. Inspired by Boris Cherny's parallel Claude workflow.
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
╭─────────────────────────────────────────────────╮
|
|
9
|
+
│ AGENT-K v1.0 │
|
|
10
|
+
╰─────────────────────────────────────────────────╯
|
|
11
|
+
|
|
12
|
+
You: Implement user authentication with JWT
|
|
13
|
+
|
|
14
|
+
[Orchestrator] Breaking down task...
|
|
15
|
+
→ Engineer: Implement JWT auth module
|
|
16
|
+
→ Tester: Write auth tests
|
|
17
|
+
→ Security: Review for vulnerabilities
|
|
18
|
+
|
|
19
|
+
[●] Orchestrator Coordinating
|
|
20
|
+
[◐] Engineer Writing src/auth.py...
|
|
21
|
+
[ ] Tester Waiting
|
|
22
|
+
[ ] Security Waiting
|
|
23
|
+
|
|
24
|
+
You: _
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Features
|
|
28
|
+
|
|
29
|
+
- **Multi-Agent Orchestration**: Coordinate specialized agents working in parallel
|
|
30
|
+
- **Two Modes**: Software Development and ML Research & Training
|
|
31
|
+
- **Interactive Chat**: Works like `claude` but with a team of specialists
|
|
32
|
+
- **Visual Mode**: tmux-based multi-pane view of all agents
|
|
33
|
+
- **Scout Agent**: Real-time web/GitHub/paper search to stay current
|
|
34
|
+
- **Date Awareness**: Agents know their training data may be outdated
|
|
35
|
+
|
|
36
|
+
## Agents
|
|
37
|
+
|
|
38
|
+
### Development Mode (Default)
|
|
39
|
+
| Agent | Role |
|
|
40
|
+
|-------|------|
|
|
41
|
+
| **Orchestrator** | Breaks down tasks, coordinates agents |
|
|
42
|
+
| **Engineer** | Implements code, debugging, refactoring |
|
|
43
|
+
| **Tester** | Writes tests, validates implementations |
|
|
44
|
+
| **Security** | Reviews for vulnerabilities, OWASP checks |
|
|
45
|
+
| **Scout** | Searches web/GitHub for current best practices |
|
|
46
|
+
|
|
47
|
+
### ML Mode (`--mode ml`)
|
|
48
|
+
| Agent | Role |
|
|
49
|
+
|-------|------|
|
|
50
|
+
| **Orchestrator** | Manages ML project lifecycle |
|
|
51
|
+
| **Researcher** | Literature review, SOTA analysis |
|
|
52
|
+
| **ML Engineer** | Model implementation, training |
|
|
53
|
+
| **Data Engineer** | Data pipelines, preprocessing |
|
|
54
|
+
| **Evaluator** | Metrics, benchmarking, experiments |
|
|
55
|
+
| **Scout** | Searches arXiv, HuggingFace, Papers With Code |
|
|
56
|
+
|
|
57
|
+
## Installation
|
|
58
|
+
|
|
59
|
+
### Quick Install (Recommended)
|
|
60
|
+
```bash
|
|
61
|
+
curl -sSL https://raw.githubusercontent.com/de5truct0/agentk/main/install.sh | bash
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Homebrew (macOS/Linux)
|
|
65
|
+
```bash
|
|
66
|
+
brew tap de5truct0/agentk
|
|
67
|
+
brew install agentk
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### npm
|
|
71
|
+
```bash
|
|
72
|
+
npm install -g agentk
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### pip
|
|
76
|
+
```bash
|
|
77
|
+
pip install agentk
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### From Source
|
|
81
|
+
```bash
|
|
82
|
+
git clone https://github.com/de5truct0/agentk.git
|
|
83
|
+
cd agentk
|
|
84
|
+
make install
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Requirements
|
|
88
|
+
|
|
89
|
+
- **bash** 4.0+
|
|
90
|
+
- **jq** (JSON processing)
|
|
91
|
+
- **claude** (Claude Code CLI) - [Install here](https://claude.ai/code)
|
|
92
|
+
- **tmux** (optional, for visual mode)
|
|
93
|
+
|
|
94
|
+
## Usage
|
|
95
|
+
|
|
96
|
+
### Start Interactive Session
|
|
97
|
+
```bash
|
|
98
|
+
agentk # Dev mode (default)
|
|
99
|
+
agentk --mode ml # ML mode
|
|
100
|
+
agentk --visual # With tmux panels
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### One-Shot Mode
|
|
104
|
+
```bash
|
|
105
|
+
agentk -c "Build a REST API for user management"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Session Commands
|
|
109
|
+
| Command | Description |
|
|
110
|
+
|---------|-------------|
|
|
111
|
+
| `/status` | Show all agent states |
|
|
112
|
+
| `/logs <agent>` | View agent output |
|
|
113
|
+
| `/kill <agent\|all>` | Stop agent(s) |
|
|
114
|
+
| `/focus <agent>` | Talk directly to agent |
|
|
115
|
+
| `/unfocus` | Return to orchestrator |
|
|
116
|
+
| `/visual` | Toggle tmux view |
|
|
117
|
+
| `/help` | Show all commands |
|
|
118
|
+
| `/exit` | End session |
|
|
119
|
+
|
|
120
|
+
### Scout Commands
|
|
121
|
+
| Command | Description |
|
|
122
|
+
|---------|-------------|
|
|
123
|
+
| `/search <query>` | Web search |
|
|
124
|
+
| `/github <query>` | Search GitHub |
|
|
125
|
+
| `/papers <topic>` | Search papers (ML mode) |
|
|
126
|
+
| `/libs <task>` | Find best libraries |
|
|
127
|
+
| `/sota <topic>` | State-of-the-art |
|
|
128
|
+
|
|
129
|
+
### ML Commands
|
|
130
|
+
| Command | Description |
|
|
131
|
+
|---------|-------------|
|
|
132
|
+
| `/experiment <name>` | Start experiment |
|
|
133
|
+
| `/metrics` | Show metrics |
|
|
134
|
+
| `/tensorboard` | Open TensorBoard |
|
|
135
|
+
| `/huggingface <query>` | Search HF Hub |
|
|
136
|
+
|
|
137
|
+
## Visual Mode
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
┌───────────────┬───────────────┬───────────────┐
|
|
141
|
+
│ ORCHESTRATOR │ ENGINEER │ TESTER │
|
|
142
|
+
├───────────────┼───────────────┼───────────────┤
|
|
143
|
+
│ SECURITY │ SCOUT │ [MAIN] │
|
|
144
|
+
└───────────────┴───────────────┴───────────────┘
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## How It Works
|
|
148
|
+
|
|
149
|
+
1. **You enter a request** in the interactive session
|
|
150
|
+
2. **Orchestrator analyzes** the task and breaks it into subtasks
|
|
151
|
+
3. **Specialist agents** are spawned as Claude subprocesses
|
|
152
|
+
4. Agents work on **your project files** in the current directory
|
|
153
|
+
5. **Results are aggregated** and reported back to you
|
|
154
|
+
|
|
155
|
+
Each agent runs as a separate `claude` CLI instance with a specialized system prompt, coordinated through file-based messaging.
|
|
156
|
+
|
|
157
|
+
## Configuration
|
|
158
|
+
|
|
159
|
+
Create `~/.agentk/config.sh` to customize:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# Use a different model
|
|
163
|
+
export AGENTK_MODEL="claude-3-opus-20240229"
|
|
164
|
+
|
|
165
|
+
# Set log level
|
|
166
|
+
export LOG_LEVEL="debug"
|
|
167
|
+
|
|
168
|
+
# Custom workspace location
|
|
169
|
+
export AGENTK_WORKSPACE="/path/to/workspace"
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## Project Structure
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
agentk/
|
|
176
|
+
├── agentk # Main CLI
|
|
177
|
+
├── lib/
|
|
178
|
+
│ ├── core.sh # Core utilities
|
|
179
|
+
│ ├── ui.sh # Pretty output
|
|
180
|
+
│ ├── ipc.sh # Inter-process communication
|
|
181
|
+
│ ├── spawn.sh # Agent spawning
|
|
182
|
+
│ └── visual.sh # tmux integration
|
|
183
|
+
├── modes/
|
|
184
|
+
│ ├── shared/
|
|
185
|
+
│ │ └── scout.md # Scout agent prompt
|
|
186
|
+
│ ├── dev/ # Dev mode agent prompts
|
|
187
|
+
│ └── ml/ # ML mode agent prompts
|
|
188
|
+
└── workspace/ # Runtime data (gitignored)
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Known Limitations
|
|
192
|
+
|
|
193
|
+
See [KNOWN_ISSUES.md](KNOWN_ISSUES.md) for a full list. Key limitations:
|
|
194
|
+
|
|
195
|
+
- **File conflicts**: Multiple agents modifying same file
|
|
196
|
+
- **Cost**: Each agent is a separate API call
|
|
197
|
+
- **Context isolation**: Agents don't share real-time context
|
|
198
|
+
- **Rate limiting**: Parallel agents may hit API limits
|
|
199
|
+
|
|
200
|
+
## Contributing
|
|
201
|
+
|
|
202
|
+
Contributions welcome! Please read the contributing guidelines first.
|
|
203
|
+
|
|
204
|
+
1. Fork the repository
|
|
205
|
+
2. Create a feature branch
|
|
206
|
+
3. Make your changes
|
|
207
|
+
4. Run tests: `make test`
|
|
208
|
+
5. Submit a pull request
|
|
209
|
+
|
|
210
|
+
## License
|
|
211
|
+
|
|
212
|
+
MIT License - see [LICENSE](LICENSE) for details.
|
|
213
|
+
|
|
214
|
+
## Acknowledgments
|
|
215
|
+
|
|
216
|
+
- Inspired by [Boris Cherny's Claude Code workflow](https://x.com/bcherny)
|
|
217
|
+
- Built for the Claude Code community
|
|
218
|
+
- Powered by [Anthropic's Claude](https://anthropic.com)
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
**AGENT-K** - Because one Claude is good, but a team of Claudes is better.
|