gemkit-cli 0.2.3 → 0.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.
Files changed (160) hide show
  1. package/README.md +141 -7
  2. package/dist/commands/agent/index.d.ts +9 -0
  3. package/dist/commands/agent/index.js +1329 -0
  4. package/dist/commands/cache/index.d.ts +5 -0
  5. package/dist/commands/cache/index.js +43 -0
  6. package/dist/commands/catalog/index.d.ts +2 -0
  7. package/dist/commands/catalog/index.js +57 -0
  8. package/dist/commands/config/index.d.ts +7 -0
  9. package/dist/commands/config/index.js +122 -0
  10. package/dist/commands/convert/index.d.ts +8 -0
  11. package/dist/commands/convert/index.js +391 -0
  12. package/dist/commands/doctor/index.d.ts +2 -0
  13. package/dist/commands/doctor/index.js +243 -0
  14. package/dist/commands/extension/index.d.ts +5 -0
  15. package/dist/commands/extension/index.js +52 -0
  16. package/dist/commands/index.d.ts +5 -0
  17. package/dist/commands/index.js +37 -0
  18. package/dist/commands/init/index.d.ts +6 -0
  19. package/dist/commands/init/index.js +345 -0
  20. package/dist/commands/new/index.d.ts +5 -0
  21. package/dist/commands/new/index.js +49 -0
  22. package/dist/commands/office/index.d.ts +5 -0
  23. package/dist/commands/office/index.js +283 -0
  24. package/dist/commands/paste/index.d.ts +10 -0
  25. package/dist/commands/paste/index.js +533 -0
  26. package/dist/commands/plan/index.d.ts +8 -0
  27. package/dist/commands/plan/index.js +247 -0
  28. package/dist/commands/session/index.d.ts +8 -0
  29. package/dist/commands/session/index.js +289 -0
  30. package/dist/commands/tokens/index.d.ts +6 -0
  31. package/dist/commands/tokens/index.js +148 -0
  32. package/dist/commands/update/index.d.ts +26 -0
  33. package/dist/commands/update/index.js +199 -0
  34. package/dist/commands/versions/index.d.ts +5 -0
  35. package/dist/commands/versions/index.js +39 -0
  36. package/dist/domains/agent/index.d.ts +8 -0
  37. package/dist/domains/agent/index.js +8 -0
  38. package/dist/domains/agent/mappings.d.ts +32 -0
  39. package/dist/domains/agent/mappings.js +164 -0
  40. package/dist/domains/agent/profile.d.ts +26 -0
  41. package/dist/domains/agent/profile.js +225 -0
  42. package/dist/domains/agent/pty-context.d.ts +11 -0
  43. package/dist/domains/agent/pty-context.js +83 -0
  44. package/dist/domains/agent/pty-providers.d.ts +18 -0
  45. package/dist/domains/agent/pty-providers.js +66 -0
  46. package/dist/domains/agent/pty-session.d.ts +33 -0
  47. package/dist/domains/agent/pty-session.js +82 -0
  48. package/dist/domains/agent/pty-types.d.ts +127 -0
  49. package/dist/domains/agent/pty-types.js +4 -0
  50. package/dist/domains/agent/search.d.ts +45 -0
  51. package/dist/domains/agent/search.js +614 -0
  52. package/dist/domains/agent/types.d.ts +78 -0
  53. package/dist/domains/agent/types.js +5 -0
  54. package/dist/domains/agent-office/documents-scanner.d.ts +9 -0
  55. package/dist/domains/agent-office/documents-scanner.js +143 -0
  56. package/dist/domains/agent-office/event-emitter.d.ts +43 -0
  57. package/dist/domains/agent-office/event-emitter.js +86 -0
  58. package/dist/domains/agent-office/file-watcher.d.ts +40 -0
  59. package/dist/domains/agent-office/file-watcher.js +173 -0
  60. package/dist/domains/agent-office/icons.d.ts +11 -0
  61. package/dist/domains/agent-office/icons.js +36 -0
  62. package/dist/domains/agent-office/index.d.ts +12 -0
  63. package/dist/domains/agent-office/index.js +20 -0
  64. package/dist/domains/agent-office/renderer/web/assets.d.ts +11 -0
  65. package/dist/domains/agent-office/renderer/web/assets.js +3419 -0
  66. package/dist/domains/agent-office/renderer/web/server.d.ts +42 -0
  67. package/dist/domains/agent-office/renderer/web/server.js +228 -0
  68. package/dist/domains/agent-office/renderer/web.d.ts +30 -0
  69. package/dist/domains/agent-office/renderer/web.js +111 -0
  70. package/dist/domains/agent-office/session-bridge.d.ts +23 -0
  71. package/dist/domains/agent-office/session-bridge.js +171 -0
  72. package/dist/domains/agent-office/state-machine.d.ts +5 -0
  73. package/dist/domains/agent-office/state-machine.js +82 -0
  74. package/dist/domains/agent-office/types.d.ts +91 -0
  75. package/dist/domains/agent-office/types.js +4 -0
  76. package/dist/domains/cache/index.d.ts +1 -0
  77. package/dist/domains/cache/index.js +1 -0
  78. package/dist/domains/cache/manager.d.ts +22 -0
  79. package/dist/domains/cache/manager.js +84 -0
  80. package/dist/domains/config/index.d.ts +5 -0
  81. package/dist/domains/config/index.js +5 -0
  82. package/dist/domains/config/manager.d.ts +24 -0
  83. package/dist/domains/config/manager.js +85 -0
  84. package/dist/domains/config/schema.d.ts +17 -0
  85. package/dist/domains/config/schema.js +96 -0
  86. package/dist/domains/convert/converter.d.ts +78 -0
  87. package/dist/domains/convert/converter.js +471 -0
  88. package/dist/domains/convert/index.d.ts +5 -0
  89. package/dist/domains/convert/index.js +5 -0
  90. package/dist/domains/convert/types.d.ts +88 -0
  91. package/dist/domains/convert/types.js +18 -0
  92. package/dist/domains/github/download.d.ts +12 -0
  93. package/dist/domains/github/download.js +51 -0
  94. package/dist/domains/github/index.d.ts +2 -0
  95. package/dist/domains/github/index.js +2 -0
  96. package/dist/domains/github/releases.d.ts +16 -0
  97. package/dist/domains/github/releases.js +68 -0
  98. package/dist/domains/installation/conflict.d.ts +13 -0
  99. package/dist/domains/installation/conflict.js +38 -0
  100. package/dist/domains/installation/file-sync.d.ts +16 -0
  101. package/dist/domains/installation/file-sync.js +77 -0
  102. package/dist/domains/installation/index.d.ts +3 -0
  103. package/dist/domains/installation/index.js +3 -0
  104. package/dist/domains/installation/metadata.d.ts +20 -0
  105. package/dist/domains/installation/metadata.js +52 -0
  106. package/dist/domains/plan/index.d.ts +2 -0
  107. package/dist/domains/plan/index.js +2 -0
  108. package/dist/domains/plan/resolver.d.ts +24 -0
  109. package/dist/domains/plan/resolver.js +164 -0
  110. package/dist/domains/plan/types.d.ts +13 -0
  111. package/dist/domains/plan/types.js +4 -0
  112. package/dist/domains/session/env.d.ts +51 -0
  113. package/dist/domains/session/env.js +118 -0
  114. package/dist/domains/session/index.d.ts +8 -0
  115. package/dist/domains/session/index.js +8 -0
  116. package/dist/domains/session/manager.d.ts +56 -0
  117. package/dist/domains/session/manager.js +205 -0
  118. package/dist/domains/session/paths.d.ts +6 -0
  119. package/dist/domains/session/paths.js +6 -0
  120. package/dist/domains/session/types.d.ts +121 -0
  121. package/dist/domains/session/types.js +5 -0
  122. package/dist/domains/session/writer.d.ts +82 -0
  123. package/dist/domains/session/writer.js +431 -0
  124. package/dist/domains/tokens/index.d.ts +5 -0
  125. package/dist/domains/tokens/index.js +5 -0
  126. package/dist/domains/tokens/pricing.d.ts +38 -0
  127. package/dist/domains/tokens/pricing.js +129 -0
  128. package/dist/domains/tokens/scanner.d.ts +42 -0
  129. package/dist/domains/tokens/scanner.js +168 -0
  130. package/dist/index.d.ts +5 -0
  131. package/dist/index.js +90 -59
  132. package/dist/services/aipty.d.ts +76 -0
  133. package/dist/services/aipty.js +276 -0
  134. package/dist/services/archive.d.ts +22 -0
  135. package/dist/services/archive.js +53 -0
  136. package/dist/services/auto-update.d.ts +26 -0
  137. package/dist/services/auto-update.js +117 -0
  138. package/dist/services/hash.d.ts +36 -0
  139. package/dist/services/hash.js +63 -0
  140. package/dist/services/logger.d.ts +28 -0
  141. package/dist/services/logger.js +102 -0
  142. package/dist/services/music.d.ts +67 -0
  143. package/dist/services/music.js +290 -0
  144. package/dist/services/npm.d.ts +22 -0
  145. package/dist/services/npm.js +65 -0
  146. package/dist/services/pty-client.d.ts +66 -0
  147. package/dist/services/pty-client.js +154 -0
  148. package/dist/services/pty-server.d.ts +102 -0
  149. package/dist/services/pty-server.js +613 -0
  150. package/dist/types/index.d.ts +155 -0
  151. package/dist/types/index.js +4 -0
  152. package/dist/utils/colors.d.ts +43 -0
  153. package/dist/utils/colors.js +98 -0
  154. package/dist/utils/errors.d.ts +24 -0
  155. package/dist/utils/errors.js +56 -0
  156. package/dist/utils/paths.d.ts +46 -0
  157. package/dist/utils/paths.js +89 -0
  158. package/dist/utils/platform.d.ts +11 -0
  159. package/dist/utils/platform.js +31 -0
  160. package/package.json +55 -54
package/README.md CHANGED
@@ -30,6 +30,7 @@ gk <command> [options]
30
30
  | `gk init` | Initialize GemKit in your project |
31
31
  | `gk new` | Create new agents, plans, or skills |
32
32
  | `gk agent` | Manage and spawn AI agents |
33
+ | `gk team` | Multi-agent team coordination |
33
34
  | `gk office` | Agent Office visualization dashboard |
34
35
  | `gk session` | View and manage sessions |
35
36
  | `gk plan` | Work with execution plans |
@@ -44,7 +45,11 @@ gk <command> [options]
44
45
  | `gk convert` | Convert between formats |
45
46
  | `gk paste` | Handle image and video pasting |
46
47
 
47
- ### Agent Commands
48
+ ## Agent Commands
49
+
50
+ ### One-Shot Mode (Spawn)
51
+
52
+ Fire-and-forget agent execution that blocks until completion.
48
53
 
49
54
  | Command | Description |
50
55
  |---------|-------------|
@@ -62,12 +67,86 @@ gk <command> [options]
62
67
  - `--cli <provider>` - CLI provider: `gemini` (default) or `claude`
63
68
  - `--music` - Play elevator music while waiting
64
69
 
70
+ ### Interactive Mode
71
+
72
+ Persistent AI session for multi-turn conversations with tool approval control.
73
+
74
+ | Command | Description |
75
+ |---------|-------------|
76
+ | `gk agent start` | Start interactive session |
77
+ | `gk agent send "<prompt>"` | Send prompt to session |
78
+ | `gk agent wait [timeout]` | Wait for completion (default: 120s) |
79
+ | `gk agent pending` | Check pending tool confirmations |
80
+ | `gk agent exchange` | Get structured JSON output |
81
+ | `gk agent read [lines]` | Read raw terminal output |
82
+ | `gk agent status` | Check session status |
83
+ | `gk agent stop` | Stop session |
84
+
85
+ **Start Options:**
86
+ - `-a, --agent <name>` - Agent profile name
87
+ - `-s, --skills <list>` - Comma-separated skills
88
+ - `-c, --context <files>` - Context files (@file syntax)
89
+ - `-m, --model <model>` - Model override
90
+ - `-t, --tools <list>` - Comma-separated tools to allow
91
+ - `--cli <provider>` - CLI provider: `gemini` (default) or `claude`
92
+
65
93
  **CLI Providers:**
66
94
  - `gemini` - Uses Gemini CLI (default). Loads from `.gemini/agents/`
67
95
  - `claude` - Uses Claude CLI. Loads from `.claude/agents/`
68
- - Models and tools are automatically mapped between providers when using fallback
96
+ - Models and tools are automatically mapped between providers
97
+
98
+ ## Team Commands
99
+
100
+ Coordinate multiple AI agents working in parallel on complex tasks.
101
+
102
+ ### Team Management
103
+
104
+ | Command | Description |
105
+ |---------|-------------|
106
+ | `gk team create <name>` | Create a new team |
107
+ | `gk team list` | List all teams |
108
+ | `gk team info [teamId]` | Show team details |
109
+ | `gk team kill [teamId]` | Emergency shutdown |
110
+ | `gk team cleanup` | Clean up stale resources |
111
+ | `gk team ports` | Show port allocations |
112
+ | `gk team reset` | Delete all team data |
113
+
114
+ ### Task Management
115
+
116
+ | Command | Description |
117
+ |---------|-------------|
118
+ | `gk team task-create "<subject>"` | Create a task |
119
+ | `gk team task-claim <taskId>` | Claim a task |
120
+ | `gk team task-done <taskId>` | Mark task completed |
121
+ | `gk team tasks [teamId]` | List all tasks |
122
+
123
+ ### Agent Spawning
124
+
125
+ | Command | Description |
126
+ |---------|-------------|
127
+ | `gk team start --name <agent>` | Spawn agent as team member |
128
+ | `gk team start --name <agent> -a <profile>` | Spawn with explicit profile |
129
+ | `gk team start --name <agent> --cli claude` | Use Claude CLI |
130
+
131
+ ### Messaging & Inbox
132
+
133
+ | Command | Description |
134
+ |---------|-------------|
135
+ | `gk team send <agent> "<message>"` | Send message to member |
136
+ | `gk team broadcast "<message>"` | Send to all members |
137
+ | `gk team messages` | View central inbox |
138
+ | `gk team messages --pending` | View pending items |
139
+ | `gk team respond <msgId> --approve` | Approve request |
140
+ | `gk team respond --approve-all` | Approve all pending |
69
141
 
70
- ### Agent Office Commands
142
+ ### Agent Interaction
143
+
144
+ | Command | Description |
145
+ |---------|-------------|
146
+ | `gk team exchange <agent>` | Get structured output |
147
+ | `gk team read <agent>` | Read raw output |
148
+
149
+ ## Agent Office Commands
71
150
 
72
151
  | Command | Description |
73
152
  |---------|-------------|
@@ -82,6 +161,8 @@ gk <command> [options]
82
161
 
83
162
  ## Quick Start
84
163
 
164
+ ### Single Agent (One-Shot)
165
+
85
166
  ```bash
86
167
  # Initialize in your project
87
168
  gk init
@@ -95,12 +176,65 @@ gk agent spawn -a researcher -s "frontend-design" -p "Build a dashboard"
95
176
  # Spawn with Claude CLI instead of Gemini
96
177
  gk agent spawn --cli claude -a researcher -p "Analyze the codebase"
97
178
 
98
- # Spawn with auto-approved tools
99
- gk agent spawn -a code-executor -t "Read,Write,Bash" -p "Fix the bug"
100
-
101
179
  # Search for the best agent for a task
102
180
  gk agent search "implement user authentication"
181
+ ```
182
+
183
+ ### Single Agent (Interactive)
184
+
185
+ ```bash
186
+ # Start interactive session
187
+ gk agent start -a researcher -s research
188
+
189
+ # Send a prompt
190
+ gk agent send "Research JWT best practices"
191
+ gk agent wait
192
+
193
+ # Check for tool approvals
194
+ gk agent pending
195
+ gk agent send "2" # Approve for session
196
+
197
+ # Get structured output
198
+ gk agent exchange
103
199
 
200
+ # Stop when done
201
+ gk agent stop
202
+ ```
203
+
204
+ ### Multi-Agent Team
205
+
206
+ ```bash
207
+ # Create a team
208
+ gk team create my-project --desc "Feature implementation"
209
+
210
+ # Create tasks
211
+ gk team task-create "Research API patterns" --desc "Investigate REST vs GraphQL"
212
+ gk team task-create "Implement backend" --desc "Build the API"
213
+
214
+ # Spawn agents
215
+ gk team start --name researcher-1 &
216
+ gk team start --name developer-1 &
217
+
218
+ # Wait for initialization, then assign work
219
+ gk team send researcher-1 "Claim and complete the research task"
220
+ gk team send developer-1 "Wait for research, then implement"
221
+
222
+ # Monitor and approve
223
+ gk team messages --pending
224
+ gk team respond --approve-all
225
+
226
+ # Check progress
227
+ gk team tasks
228
+ gk team exchange researcher-1
229
+
230
+ # Cleanup when done
231
+ gk team kill
232
+ gk team reset
233
+ ```
234
+
235
+ ### Agent Office Dashboard
236
+
237
+ ```bash
104
238
  # Start the Agent Office dashboard
105
239
  gk office start
106
240
 
@@ -120,4 +254,4 @@ gk session list
120
254
 
121
255
  ## License
122
256
 
123
- MIT
257
+ MIT
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Agent command - list, info, search, spawn (NO resume)
3
+ * Spawn aligned with .gemini/extensions/spawn-agent/scripts/gemini_agent.js
4
+ *
5
+ * Uses manual subcommand routing since CAC doesn't support space-separated subcommands.
6
+ * Help is customized to show subcommand-specific options.
7
+ */
8
+ import type { CAC } from 'cac';
9
+ export declare function registerAgentCommand(cli: CAC): void;