crewx 0.8.0 → 0.8.1-rc.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 (100) hide show
  1. package/README.md +268 -268
  2. package/bin/crewx-lib.js +108 -108
  3. package/bin/crewx-ui.js +83 -83
  4. package/bin/crewx.js +146 -146
  5. package/bin/package.json +1 -1
  6. package/dist/assets/{MarketPage-BT3GQr4Z.js → MarketPage-CGx2epMQ.js} +1 -1
  7. package/dist/assets/{PromptTab-DaLqXBll.js → PromptTab-CiVBeD6V.js} +1 -1
  8. package/dist/assets/{_baseUniq-B_QQ0uip.js → _baseUniq-BONRG510.js} +1 -1
  9. package/dist/assets/{arc-BjdBb1cc.js → arc-BT4u0HWa.js} +1 -1
  10. package/dist/assets/{architectureDiagram-Q4EWVU46-DKDOeEyR.js → architectureDiagram-Q4EWVU46-C_ppBjGD.js} +1 -1
  11. package/dist/assets/{blockDiagram-DXYQGD6D-DmQUI9b-.js → blockDiagram-DXYQGD6D-CZerdbHN.js} +1 -1
  12. package/dist/assets/{c4Diagram-AHTNJAMY-DLUq2FTl.js → c4Diagram-AHTNJAMY-BAuCYuTZ.js} +1 -1
  13. package/dist/assets/channel-BOY0OH4u.js +1 -0
  14. package/dist/assets/chatgpt-logo-dark.svg +15 -15
  15. package/dist/assets/chatgpt-logo.svg +15 -15
  16. package/dist/assets/{chunk-4BX2VUAB-D-7sqat9.js → chunk-4BX2VUAB-CkvrhKSg.js} +1 -1
  17. package/dist/assets/{chunk-4TB4RGXK-DB-IA4dN.js → chunk-4TB4RGXK-BHkJePLd.js} +1 -1
  18. package/dist/assets/{chunk-55IACEB6-RVXGEqi4.js → chunk-55IACEB6-L1rIvAcp.js} +1 -1
  19. package/dist/assets/{chunk-EDXVE4YY-BQmcxTFY.js → chunk-EDXVE4YY-DnAtRHyp.js} +1 -1
  20. package/dist/assets/{chunk-FMBD7UC4-Cfpp4bD4.js → chunk-FMBD7UC4-HoZUOhqV.js} +1 -1
  21. package/dist/assets/{chunk-OYMX7WX6-DgHtGzBn.js → chunk-OYMX7WX6-DlRjj-CM.js} +1 -1
  22. package/dist/assets/{chunk-QZHKN3VN-CdFnsD-i.js → chunk-QZHKN3VN-D-7xJdLo.js} +1 -1
  23. package/dist/assets/{chunk-YZCP3GAM-Cy977iyX.js → chunk-YZCP3GAM-CHyxGAO_.js} +1 -1
  24. package/dist/assets/classDiagram-6PBFFD2Q-DL1HvI-C.js +1 -0
  25. package/dist/assets/classDiagram-v2-HSJHXN6E-DL1HvI-C.js +1 -0
  26. package/dist/assets/clone-C7f0ZMqY.js +1 -0
  27. package/dist/assets/{cose-bilkent-S5V4N54A-BOwukgna.js → cose-bilkent-S5V4N54A-Dw4i8Ggn.js} +1 -1
  28. package/dist/assets/{dagre-KV5264BT-D7mS6J0y.js → dagre-KV5264BT-BYL4eK2l.js} +1 -1
  29. package/dist/assets/{diagram-5BDNPKRD-Av-SOywO.js → diagram-5BDNPKRD-D3M6reMu.js} +1 -1
  30. package/dist/assets/{diagram-G4DWMVQ6-V44l2rmJ.js → diagram-G4DWMVQ6-bY4wiUaF.js} +1 -1
  31. package/dist/assets/{diagram-MMDJMWI5-X94s_ZY_.js → diagram-MMDJMWI5-BouIZRe9.js} +1 -1
  32. package/dist/assets/{diagram-TYMM5635-CpyKA1_R.js → diagram-TYMM5635-fCpL9q61.js} +1 -1
  33. package/dist/assets/{erDiagram-SMLLAGMA-Dhf-eGE_.js → erDiagram-SMLLAGMA-BrMoVSnz.js} +1 -1
  34. package/dist/assets/{flowDiagram-DWJPFMVM-Db7o2P_c.js → flowDiagram-DWJPFMVM-Bu0w0rly.js} +1 -1
  35. package/dist/assets/{ganttDiagram-T4ZO3ILL-DQn7NpC_.js → ganttDiagram-T4ZO3ILL-zvvgQDhr.js} +1 -1
  36. package/dist/assets/{gitGraphDiagram-UUTBAWPF--kf8kjKI.js → gitGraphDiagram-UUTBAWPF-Da2f885x.js} +1 -1
  37. package/dist/assets/{graph-Ct0631al.js → graph-DFccQ8ai.js} +1 -1
  38. package/dist/assets/{infoDiagram-42DDH7IO-Cw2y6jcE.js → infoDiagram-42DDH7IO-DyNgOB_l.js} +1 -1
  39. package/dist/assets/{ishikawaDiagram-UXIWVN3A-Bmgt4_ln.js → ishikawaDiagram-UXIWVN3A-J_wFVIcw.js} +1 -1
  40. package/dist/assets/{journeyDiagram-VCZTEJTY-DYUfYCuH.js → journeyDiagram-VCZTEJTY-CJSqePlE.js} +1 -1
  41. package/dist/assets/{kanban-definition-6JOO6SKY-BvsK9KBr.js → kanban-definition-6JOO6SKY-DJZPbUWN.js} +1 -1
  42. package/dist/assets/{layout-B8vGdkpq.js → layout-DuzQ2Ah_.js} +1 -1
  43. package/dist/assets/{linear-CjLnwOPd.js → linear-C3bEaeuM.js} +1 -1
  44. package/dist/assets/{main-CWEHmWNh.js → main-t0X2UEsp.js} +215 -219
  45. package/dist/assets/{min-DwRXGdTV.js → min-B7VrhlZK.js} +1 -1
  46. package/dist/assets/{mindmap-definition-QFDTVHPH-BwYLt7Kb.js → mindmap-definition-QFDTVHPH-CZ5N1mzH.js} +1 -1
  47. package/dist/assets/{pieDiagram-DEJITSTG-CtYvlk48.js → pieDiagram-DEJITSTG-CBWxsNX_.js} +1 -1
  48. package/dist/assets/{quadrantDiagram-34T5L4WZ-BiTJCKr2.js → quadrantDiagram-34T5L4WZ-D0bIH2A9.js} +1 -1
  49. package/dist/assets/{requirementDiagram-MS252O5E-DLz0JrDZ.js → requirementDiagram-MS252O5E-7xtLUnDd.js} +1 -1
  50. package/dist/assets/{sankeyDiagram-XADWPNL6-CKZF9Dww.js → sankeyDiagram-XADWPNL6-ghLQ_hKS.js} +1 -1
  51. package/dist/assets/{sequenceDiagram-FGHM5R23-CpDLag3f.js → sequenceDiagram-FGHM5R23-tyYj8D1S.js} +1 -1
  52. package/dist/assets/{stateDiagram-FHFEXIEX-DvVUjIFs.js → stateDiagram-FHFEXIEX-inkONIBs.js} +1 -1
  53. package/dist/assets/stateDiagram-v2-QKLJ7IA2-Bm4OMeSp.js +1 -0
  54. package/dist/assets/{timeline-definition-GMOUNBTQ-BAITRQ63.js → timeline-definition-GMOUNBTQ-Cj_zAVpW.js} +1 -1
  55. package/dist/assets/{vennDiagram-DHZGUBPP-D_k0IZf7.js → vennDiagram-DHZGUBPP-BJFxO7M3.js} +1 -1
  56. package/dist/assets/{wardley-RL74JXVD-DCljsGq9.js → wardley-RL74JXVD-DsbavZni.js} +1 -1
  57. package/dist/assets/{wardleyDiagram-NUSXRM2D-HbKaDtAB.js → wardleyDiagram-NUSXRM2D-T59dHt00.js} +1 -1
  58. package/dist/assets/{xychartDiagram-5P7HB3ND-YmaVzCt7.js → xychartDiagram-5P7HB3ND-j4aWA2IV.js} +1 -1
  59. package/dist/index.html +12 -12
  60. package/dist-electron/main.js +116 -153
  61. package/dist-electron/overlay.js +65 -102
  62. package/dist-electron/preload.js +8 -8
  63. package/dist-server/bootstrap/crewx-server.js +25 -5
  64. package/dist-server/domain/doc/doc.service.js +10 -5
  65. package/dist-server/domain/health/health.controller.js +3 -1
  66. package/dist-server/domain/workspace/workspace.service.js +1 -1
  67. package/dist-server/repository/box.repository.js +20 -20
  68. package/dist-server/repository/project.repository.js +13 -13
  69. package/dist-server/repository/request-log.repository.js +10 -10
  70. package/dist-server/repository/task.repository.js +72 -72
  71. package/dist-server/repository/thread.repository.js +57 -57
  72. package/package.json +8 -7
  73. package/packages/cli/dist/commands/agent.js +23 -23
  74. package/packages/cli/dist/commands/init.js +19 -19
  75. package/packages/cli/dist/commands/task-db.js +7 -7
  76. package/packages/cli/dist/main.js +59 -59
  77. package/packages/cli/package.json +52 -52
  78. package/scripts/build-manual.mjs +266 -266
  79. package/scripts/emit-dist-server-package-json.mjs +7 -7
  80. package/scripts/postinstall.mjs +44 -44
  81. package/scripts/smoke-tarball.mjs +285 -285
  82. package/scripts/snapshot-msg-list.sh +52 -52
  83. package/server.js +164 -164
  84. package/dist/assets/channel-DsBzLXQf.js +0 -1
  85. package/dist/assets/classDiagram-6PBFFD2Q-DUY3iq76.js +0 -1
  86. package/dist/assets/classDiagram-v2-HSJHXN6E-DUY3iq76.js +0 -1
  87. package/dist/assets/clone-CkDymmnq.js +0 -1
  88. package/dist/assets/stateDiagram-v2-QKLJ7IA2-CZBee3V1.js +0 -1
  89. package/dist-electron/package.json +0 -1
  90. package/dist-server/domain/task/dto/project-usage.dto.js +0 -38
  91. package/dist-server/domain/thread/dto/send-message.dto.js +0 -10
  92. package/packages/cli/dist/examples/deny-secrets-plugin.d.ts +0 -22
  93. package/packages/cli/dist/examples/deny-secrets-plugin.js +0 -40
  94. package/packages/cli/dist/plugins/examples/echo-hook.d.ts +0 -24
  95. package/packages/cli/dist/plugins/examples/echo-hook.js +0 -60
  96. package/packages/cli/dist/plugins/examples/verify-echo-hook.d.ts +0 -8
  97. package/packages/cli/dist/plugins/examples/verify-echo-hook.js +0 -47
  98. package/packages/cli/dist/plugins/sqlite-tracing.d.ts +0 -13
  99. package/packages/cli/dist/plugins/sqlite-tracing.js +0 -20
  100. package/scripts/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
package/README.md CHANGED
@@ -1,268 +1,268 @@
1
- # CrewX
2
-
3
- > Build your AI agent team — bring any model, orchestrate any workflow
4
-
5
- [![npm version](https://img.shields.io/npm/v/crewx)](https://www.npmjs.com/package/crewx)
6
- [![Node.js](https://img.shields.io/badge/node-%3E%3D22-brightgreen)](https://nodejs.org/)
7
- [![License](https://img.shields.io/badge/license-see%20below-blue)](#license)
8
-
9
- ## What is CrewX?
10
-
11
- CrewX is a developer tool for building and managing AI agent teams. Define agents in YAML, wire them into workflows, and let them collaborate using built-in tools — all from a single CLI or web dashboard.
12
-
13
- - **Bring Your Own AI** — Claude, Gemini, Copilot, Codex, or any OpenAI-compatible model
14
- - **One command to start** — `npx crewx` launches everything
15
- - **Team orchestration** — agents work together through threads, workflows, and shared memory
16
-
17
- ## Quick Start
18
-
19
- ```bash
20
- npx crewx
21
- ```
22
-
23
- That's it. This launches the CrewX dashboard at `http://localhost:8150` where you can manage agents, create threads, and monitor workflows.
24
-
25
- ### Initialize a new project
26
-
27
- ```bash
28
- npx crewx init
29
- ```
30
-
31
- This creates a `crewx.yaml` in your project with default agents and settings.
32
-
33
- ### Talk to your agents
34
-
35
- ```bash
36
- # Ask a question (query mode)
37
- npx crewx q "@claude review this codebase"
38
-
39
- # Execute a task (agents can edit files)
40
- npx crewx x "@copilot implement login component"
41
-
42
- # Multi-agent collaboration
43
- npx crewx q "@claude @gemini compare approaches for caching"
44
- ```
45
-
46
- ## Key Features
47
-
48
- ### BYOA (Bring Your Own AI)
49
-
50
- Use your existing AI subscriptions — or run fully local with Ollama. No vendor lock-in.
51
-
52
- | Provider | CLI | Status |
53
- |----------|-----|--------|
54
- | Claude | `claude` | Supported |
55
- | Gemini | `gemini` | Supported |
56
- | GitHub Copilot | `copilot` | Supported |
57
- | Codex | `codex` | Supported |
58
- | Ollama (local LLM) | API provider | Supported |
59
- | OpenAI-compatible | API provider | Supported |
60
-
61
- Build a **fully local AI team** with Ollama — no cloud, no API costs, complete data privacy. Mix and match cloud and local models in the same team.
62
-
63
- ### Agent Teams
64
-
65
- Define your team in `crewx.yaml`:
66
-
67
- ```yaml
68
- agents:
69
- - id: reviewer
70
- name: Code Reviewer
71
- provider: cli/claude
72
- inline:
73
- model: claude-sonnet-4-6
74
- prompt: |
75
- You are a senior code reviewer.
76
- Focus on correctness, performance, and security.
77
-
78
- - id: implementer
79
- name: Implementer
80
- provider: cli/copilot
81
- inline:
82
- prompt: |
83
- You are a full-stack developer.
84
- Write clean, tested code following project conventions.
85
- ```
86
-
87
- ### Thread Conversations
88
-
89
- Thread-based conversations keep context across multiple interactions. Agents remember previous messages and can build on each other's work.
90
-
91
- ```bash
92
- # Start a thread
93
- npx crewx q "@reviewer review PR #42" --thread="pr-42-review"
94
-
95
- # Continue the conversation
96
- npx crewx q "@implementer fix the issues found" --thread="pr-42-review"
97
- ```
98
-
99
- ### Semantic Workflows
100
-
101
- Define agent collaboration as semantic workflow YAML — branching, parallel execution, approval gates, and loops:
102
-
103
- ```yaml
104
- # workflows/code-review.yaml
105
- workflows:
106
- code-review:
107
- metadata:
108
- name: "Code Review Workflow"
109
- nodes:
110
- review:
111
- type: agent_task
112
- agent: reviewer
113
- mode: query
114
- input: "Review the latest changes for bugs and security issues"
115
- output: review_result
116
- next: fix
117
-
118
- fix:
119
- type: agent_task
120
- agent: implementer
121
- mode: execute
122
- input: "Fix the issues found: {{review_result}}"
123
- next: end
124
-
125
- end:
126
- type: end
127
- ```
128
-
129
- ### Built-in Tools
130
-
131
- Each tool is a standalone npm package — install individually or use all out of the box:
132
-
133
- | Package | npm | Description |
134
- |---------|-----|-------------|
135
- | `@crewx/memory` | [![npm](https://img.shields.io/npm/v/@crewx/memory)](https://www.npmjs.com/package/@crewx/memory) | Persistent agent memory (markdown + frontmatter) |
136
- | `@crewx/doc` | [![npm](https://img.shields.io/npm/v/@crewx/doc)](https://www.npmjs.com/package/@crewx/doc) | Document TOC extraction and section reader |
137
- | `@crewx/search` | [![npm](https://img.shields.io/npm/v/@crewx/search)](https://www.npmjs.com/package/@crewx/search) | BM25 full-text code/document search |
138
- | `@crewx/cron` | [![npm](https://img.shields.io/npm/v/@crewx/cron)](https://www.npmjs.com/package/@crewx/cron) | Scheduled task execution |
139
- | `@crewx/wbs` | [![npm](https://img.shields.io/npm/v/@crewx/wbs)](https://www.npmjs.com/package/@crewx/wbs) | Work breakdown structure management |
140
- | `@crewx/workflow` | [![npm](https://img.shields.io/npm/v/@crewx/workflow)](https://www.npmjs.com/package/@crewx/workflow) | Semantic workflow engine (branch, parallel, approval) |
141
- | `@crewx/skill` | [![npm](https://img.shields.io/npm/v/@crewx/skill)](https://www.npmjs.com/package/@crewx/skill) | Reusable skill system (Claude Code compatible) |
142
- | `@crewx/knowledge-core` | [![npm](https://img.shields.io/npm/v/@crewx/knowledge-core)](https://www.npmjs.com/package/@crewx/knowledge-core) | Knowledge graph engine |
143
- | `@crewx/shared` | [![npm](https://img.shields.io/npm/v/@crewx/shared)](https://www.npmjs.com/package/@crewx/shared) | Shared utilities for built-in tools |
144
-
145
- ### Desktop & Server
146
-
147
- - **Web Dashboard** — `npx crewx` serves a full management UI
148
- - **Electron Desktop App** — native app with the same features
149
- - **MCP Server** — JSON-RPC 2.0 endpoint for IDE integration (Claude Code, Cursor, etc.)
150
-
151
- ## Use Cases
152
-
153
- ### Development Workflow Automation
154
- Set up AI-powered code review, testing, and deployment pipelines. Multiple agents handle different stages of your development process.
155
-
156
- ### Team Productivity
157
- Distribute tasks across specialized agents. A reviewer checks code quality while an implementer writes features — in parallel.
158
-
159
- ### AI-Powered Business Automation
160
- Build agent teams that handle business processes end-to-end. From customer research to content generation, agents collaborate through workflows and shared knowledge.
161
-
162
- ## Supported Providers
163
-
164
- ### CLI Providers
165
- Use AI tools you already have installed:
166
-
167
- | Provider | CLI | Notes |
168
- |----------|-----|-------|
169
- | Claude (Anthropic) | `claude` | Complex reasoning, system design |
170
- | Gemini (Google) | `gemini` | Research, data analysis |
171
- | GitHub Copilot | `copilot` | Code generation |
172
- | Codex (OpenAI) | `codex` | General-purpose coding |
173
-
174
- ### API Providers
175
- Connect any API-compatible model — including local LLMs:
176
-
177
- | Provider | Type | Notes |
178
- |----------|------|-------|
179
- | Ollama | Local LLM | Run fully local — zero cloud, zero cost, full privacy |
180
- | OpenAI API | Cloud API | GPT-4o, o1, etc. |
181
- | OpenAI-compatible | Cloud/Local | Any endpoint following OpenAI API spec |
182
-
183
- Mix CLI and API providers in the same team. For example, Claude for planning + Ollama for execution — best of both worlds.
184
-
185
- ## Requirements
186
-
187
- - **Node.js** >= 22 (required by Copilot CLI provider)
188
- - **OS**: macOS, Windows, or Linux
189
- - At least one AI CLI installed: `claude`, `gemini`, `copilot`, or `codex`
190
-
191
- ## Configuration
192
-
193
- ### Minimal `crewx.yaml`
194
-
195
- ```yaml
196
- agents:
197
- - id: assistant
198
- provider: cli/claude
199
- inline:
200
- prompt: "You are a helpful coding assistant."
201
- ```
202
-
203
- ### Full example with skills and workflows
204
-
205
- ```yaml
206
- skills:
207
- paths:
208
- - ./skills # Custom skill directory
209
-
210
- agents:
211
- - id: lead
212
- name: Tech Lead
213
- provider: cli/claude
214
- skills:
215
- include:
216
- - code-reviewer
217
- - api-designer
218
- inline:
219
- model: claude-opus-4-6
220
- prompt: |
221
- You are a tech lead responsible for architecture decisions
222
- and code quality.
223
-
224
- - id: dev
225
- name: Developer
226
- provider: cli/copilot
227
- inline:
228
- prompt: |
229
- You are a full-stack developer.
230
- Follow the tech lead's guidance.
231
- ```
232
-
233
- ### CLI Commands
234
-
235
- | Command | Description |
236
- |---------|-------------|
237
- | `npx crewx` | Launch web dashboard |
238
- | `npx crewx init` | Initialize project with `crewx.yaml` |
239
- | `npx crewx q "@agent message"` | Query an agent (read-only) |
240
- | `npx crewx x "@agent message"` | Execute a task (can edit files) |
241
- | `npx crewx agent list` | List configured agents |
242
- | `npx crewx doctor` | Check system health |
243
- | `npx crewx skill list` | List available skills |
244
- | `npx crewx workflow list` | List workflows |
245
- | `npx crewx memory index <agent>` | View agent memory |
246
- | `npx crewx search "query"` | Full-text search |
247
-
248
- ## Documentation
249
-
250
- - **Web Dashboard**: Launch with `npx crewx` and explore at `http://localhost:8150`
251
- - **API Reference**: Swagger UI available at `http://localhost:8150/api/docs`
252
- - **Contributing**: See [CONTRIBUTING.md](CONTRIBUTING.md)
253
-
254
- ## License
255
-
256
- CrewX is built on an open-source CLI engine:
257
-
258
- | Component | License | Notes |
259
- |-----------|---------|-------|
260
- | CLI Engine + SDK | Apache-2.0 | Open source — [sowonlabs/crewx](https://github.com/sowonlabs/crewx) |
261
- | Built-in Tools (`@crewx/*`) | Proprietary | Free to use via npm, source not published |
262
- | Web UI + Server | Proprietary | Included in this package |
263
-
264
- The open-source CLI ([sowonlabs/crewx](https://github.com/sowonlabs/crewx)) is the foundation of this project. New CLI features are developed here first and periodically contributed back to the open-source repository.
265
-
266
- ---
267
-
268
- **[SowonLabs](https://sowonlabs.com)** | [GitHub](https://github.com/sowonlabs/crewx) | hello@sowonlabs.com
1
+ # CrewX
2
+
3
+ > Build your AI agent team — bring any model, orchestrate any workflow
4
+
5
+ [![npm version](https://img.shields.io/npm/v/crewx)](https://www.npmjs.com/package/crewx)
6
+ [![Node.js](https://img.shields.io/badge/node-%3E%3D22-brightgreen)](https://nodejs.org/)
7
+ [![License](https://img.shields.io/badge/license-see%20below-blue)](#license)
8
+
9
+ ## What is CrewX?
10
+
11
+ CrewX is a developer tool for building and managing AI agent teams. Define agents in YAML, wire them into workflows, and let them collaborate using built-in tools — all from a single CLI or web dashboard.
12
+
13
+ - **Bring Your Own AI** — Claude, Gemini, Copilot, Codex, or any OpenAI-compatible model
14
+ - **One command to start** — `npx crewx` launches everything
15
+ - **Team orchestration** — agents work together through threads, workflows, and shared memory
16
+
17
+ ## Quick Start
18
+
19
+ ```bash
20
+ npx crewx
21
+ ```
22
+
23
+ That's it. This launches the CrewX dashboard at `http://localhost:8150` where you can manage agents, create threads, and monitor workflows.
24
+
25
+ ### Initialize a new project
26
+
27
+ ```bash
28
+ npx crewx init
29
+ ```
30
+
31
+ This creates a `crewx.yaml` in your project with default agents and settings.
32
+
33
+ ### Talk to your agents
34
+
35
+ ```bash
36
+ # Ask a question (query mode)
37
+ npx crewx q "@claude review this codebase"
38
+
39
+ # Execute a task (agents can edit files)
40
+ npx crewx x "@copilot implement login component"
41
+
42
+ # Multi-agent collaboration
43
+ npx crewx q "@claude @gemini compare approaches for caching"
44
+ ```
45
+
46
+ ## Key Features
47
+
48
+ ### BYOA (Bring Your Own AI)
49
+
50
+ Use your existing AI subscriptions — or run fully local with Ollama. No vendor lock-in.
51
+
52
+ | Provider | CLI | Status |
53
+ |----------|-----|--------|
54
+ | Claude | `claude` | Supported |
55
+ | Gemini | `gemini` | Supported |
56
+ | GitHub Copilot | `copilot` | Supported |
57
+ | Codex | `codex` | Supported |
58
+ | Ollama (local LLM) | API provider | Supported |
59
+ | OpenAI-compatible | API provider | Supported |
60
+
61
+ Build a **fully local AI team** with Ollama — no cloud, no API costs, complete data privacy. Mix and match cloud and local models in the same team.
62
+
63
+ ### Agent Teams
64
+
65
+ Define your team in `crewx.yaml`:
66
+
67
+ ```yaml
68
+ agents:
69
+ - id: reviewer
70
+ name: Code Reviewer
71
+ provider: cli/claude
72
+ inline:
73
+ model: claude-sonnet-4-6
74
+ prompt: |
75
+ You are a senior code reviewer.
76
+ Focus on correctness, performance, and security.
77
+
78
+ - id: implementer
79
+ name: Implementer
80
+ provider: cli/copilot
81
+ inline:
82
+ prompt: |
83
+ You are a full-stack developer.
84
+ Write clean, tested code following project conventions.
85
+ ```
86
+
87
+ ### Thread Conversations
88
+
89
+ Thread-based conversations keep context across multiple interactions. Agents remember previous messages and can build on each other's work.
90
+
91
+ ```bash
92
+ # Start a thread
93
+ npx crewx q "@reviewer review PR #42" --thread="pr-42-review"
94
+
95
+ # Continue the conversation
96
+ npx crewx q "@implementer fix the issues found" --thread="pr-42-review"
97
+ ```
98
+
99
+ ### Semantic Workflows
100
+
101
+ Define agent collaboration as semantic workflow YAML — branching, parallel execution, approval gates, and loops:
102
+
103
+ ```yaml
104
+ # workflows/code-review.yaml
105
+ workflows:
106
+ code-review:
107
+ metadata:
108
+ name: "Code Review Workflow"
109
+ nodes:
110
+ review:
111
+ type: agent_task
112
+ agent: reviewer
113
+ mode: query
114
+ input: "Review the latest changes for bugs and security issues"
115
+ output: review_result
116
+ next: fix
117
+
118
+ fix:
119
+ type: agent_task
120
+ agent: implementer
121
+ mode: execute
122
+ input: "Fix the issues found: {{review_result}}"
123
+ next: end
124
+
125
+ end:
126
+ type: end
127
+ ```
128
+
129
+ ### Built-in Tools
130
+
131
+ Each tool is a standalone npm package — install individually or use all out of the box:
132
+
133
+ | Package | npm | Description |
134
+ |---------|-----|-------------|
135
+ | `@crewx/memory` | [![npm](https://img.shields.io/npm/v/@crewx/memory)](https://www.npmjs.com/package/@crewx/memory) | Persistent agent memory (markdown + frontmatter) |
136
+ | `@crewx/doc` | [![npm](https://img.shields.io/npm/v/@crewx/doc)](https://www.npmjs.com/package/@crewx/doc) | Document TOC extraction and section reader |
137
+ | `@crewx/search` | [![npm](https://img.shields.io/npm/v/@crewx/search)](https://www.npmjs.com/package/@crewx/search) | BM25 full-text code/document search |
138
+ | `@crewx/cron` | [![npm](https://img.shields.io/npm/v/@crewx/cron)](https://www.npmjs.com/package/@crewx/cron) | Scheduled task execution |
139
+ | `@crewx/wbs` | [![npm](https://img.shields.io/npm/v/@crewx/wbs)](https://www.npmjs.com/package/@crewx/wbs) | Work breakdown structure management |
140
+ | `@crewx/workflow` | [![npm](https://img.shields.io/npm/v/@crewx/workflow)](https://www.npmjs.com/package/@crewx/workflow) | Semantic workflow engine (branch, parallel, approval) |
141
+ | `@crewx/skill` | [![npm](https://img.shields.io/npm/v/@crewx/skill)](https://www.npmjs.com/package/@crewx/skill) | Reusable skill system (Claude Code compatible) |
142
+ | `@crewx/knowledge-core` | [![npm](https://img.shields.io/npm/v/@crewx/knowledge-core)](https://www.npmjs.com/package/@crewx/knowledge-core) | Knowledge graph engine |
143
+ | `@crewx/shared` | [![npm](https://img.shields.io/npm/v/@crewx/shared)](https://www.npmjs.com/package/@crewx/shared) | Shared utilities for built-in tools |
144
+
145
+ ### Desktop & Server
146
+
147
+ - **Web Dashboard** — `npx crewx` serves a full management UI
148
+ - **Electron Desktop App** — native app with the same features
149
+ - **MCP Server** — JSON-RPC 2.0 endpoint for IDE integration (Claude Code, Cursor, etc.)
150
+
151
+ ## Use Cases
152
+
153
+ ### Development Workflow Automation
154
+ Set up AI-powered code review, testing, and deployment pipelines. Multiple agents handle different stages of your development process.
155
+
156
+ ### Team Productivity
157
+ Distribute tasks across specialized agents. A reviewer checks code quality while an implementer writes features — in parallel.
158
+
159
+ ### AI-Powered Business Automation
160
+ Build agent teams that handle business processes end-to-end. From customer research to content generation, agents collaborate through workflows and shared knowledge.
161
+
162
+ ## Supported Providers
163
+
164
+ ### CLI Providers
165
+ Use AI tools you already have installed:
166
+
167
+ | Provider | CLI | Notes |
168
+ |----------|-----|-------|
169
+ | Claude (Anthropic) | `claude` | Complex reasoning, system design |
170
+ | Gemini (Google) | `gemini` | Research, data analysis |
171
+ | GitHub Copilot | `copilot` | Code generation |
172
+ | Codex (OpenAI) | `codex` | General-purpose coding |
173
+
174
+ ### API Providers
175
+ Connect any API-compatible model — including local LLMs:
176
+
177
+ | Provider | Type | Notes |
178
+ |----------|------|-------|
179
+ | Ollama | Local LLM | Run fully local — zero cloud, zero cost, full privacy |
180
+ | OpenAI API | Cloud API | GPT-4o, o1, etc. |
181
+ | OpenAI-compatible | Cloud/Local | Any endpoint following OpenAI API spec |
182
+
183
+ Mix CLI and API providers in the same team. For example, Claude for planning + Ollama for execution — best of both worlds.
184
+
185
+ ## Requirements
186
+
187
+ - **Node.js** >= 22 (required by Copilot CLI provider)
188
+ - **OS**: macOS, Windows, or Linux
189
+ - At least one AI CLI installed: `claude`, `gemini`, `copilot`, or `codex`
190
+
191
+ ## Configuration
192
+
193
+ ### Minimal `crewx.yaml`
194
+
195
+ ```yaml
196
+ agents:
197
+ - id: assistant
198
+ provider: cli/claude
199
+ inline:
200
+ prompt: "You are a helpful coding assistant."
201
+ ```
202
+
203
+ ### Full example with skills and workflows
204
+
205
+ ```yaml
206
+ skills:
207
+ paths:
208
+ - ./skills # Custom skill directory
209
+
210
+ agents:
211
+ - id: lead
212
+ name: Tech Lead
213
+ provider: cli/claude
214
+ skills:
215
+ include:
216
+ - code-reviewer
217
+ - api-designer
218
+ inline:
219
+ model: claude-opus-4-6
220
+ prompt: |
221
+ You are a tech lead responsible for architecture decisions
222
+ and code quality.
223
+
224
+ - id: dev
225
+ name: Developer
226
+ provider: cli/copilot
227
+ inline:
228
+ prompt: |
229
+ You are a full-stack developer.
230
+ Follow the tech lead's guidance.
231
+ ```
232
+
233
+ ### CLI Commands
234
+
235
+ | Command | Description |
236
+ |---------|-------------|
237
+ | `npx crewx` | Launch web dashboard |
238
+ | `npx crewx init` | Initialize project with `crewx.yaml` |
239
+ | `npx crewx q "@agent message"` | Query an agent (read-only) |
240
+ | `npx crewx x "@agent message"` | Execute a task (can edit files) |
241
+ | `npx crewx agent list` | List configured agents |
242
+ | `npx crewx doctor` | Check system health |
243
+ | `npx crewx skill list` | List available skills |
244
+ | `npx crewx workflow list` | List workflows |
245
+ | `npx crewx memory index <agent>` | View agent memory |
246
+ | `npx crewx search "query"` | Full-text search |
247
+
248
+ ## Documentation
249
+
250
+ - **Web Dashboard**: Launch with `npx crewx` and explore at `http://localhost:8150`
251
+ - **API Reference**: Swagger UI available at `http://localhost:8150/api/docs`
252
+ - **Contributing**: See [CONTRIBUTING.md](CONTRIBUTING.md)
253
+
254
+ ## License
255
+
256
+ CrewX is built on an open-source CLI engine:
257
+
258
+ | Component | License | Notes |
259
+ |-----------|---------|-------|
260
+ | CLI Engine + SDK | Apache-2.0 | Open source — [sowonlabs/crewx](https://github.com/sowonlabs/crewx) |
261
+ | Built-in Tools (`@crewx/*`) | Proprietary | Free to use via npm, source not published |
262
+ | Web UI + Server | Proprietary | Included in this package |
263
+
264
+ The open-source CLI ([sowonlabs/crewx](https://github.com/sowonlabs/crewx)) is the foundation of this project. New CLI features are developed here first and periodically contributed back to the open-source repository.
265
+
266
+ ---
267
+
268
+ **[SowonLabs](https://sowonlabs.com)** | [GitHub](https://github.com/sowonlabs/crewx) | hello@sowonlabs.com