@aksp/opencrew 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.
Files changed (35) hide show
  1. package/CHANGELOG.md +139 -139
  2. package/README.md +150 -150
  3. package/package.json +63 -63
  4. package/src/cli.js +136 -136
  5. package/src/commands/init.js +125 -103
  6. package/src/commands/update.js +87 -77
  7. package/src/lib/fsx.js +127 -76
  8. package/templates/.mcp.json +9 -9
  9. package/templates/AGENTS.md +133 -133
  10. package/templates/_opencrew/.opencrew-version +1 -1
  11. package/templates/_opencrew/_memory/preferences.md +11 -10
  12. package/templates/_opencrew/agents/copywriter.agent.md +66 -0
  13. package/templates/_opencrew/agents/designer.agent.md +65 -0
  14. package/templates/_opencrew/agents/researcher.agent.md +95 -0
  15. package/templates/_opencrew/agents/reviewer.agent.md +76 -0
  16. package/templates/_opencrew/agents/strategist.agent.md +64 -0
  17. package/templates/_opencrew/core/architect.agent.yaml +2 -2
  18. package/templates/_opencrew/core/prompts/build.prompt.md +614 -586
  19. package/templates/_opencrew/core/prompts/design.prompt.md +255 -27
  20. package/templates/_opencrew/core/prompts/discovery.prompt.md +42 -1
  21. package/templates/_opencrew/core/prompts/export.prompt.md +133 -0
  22. package/templates/_opencrew/core/prompts/repair.prompt.md +119 -119
  23. package/templates/_opencrew/core/prompts/sherlock-seo.md +216 -0
  24. package/templates/_opencrew/core/prompts/sherlock-shared.md +73 -1
  25. package/templates/_opencrew/core/prompts/sherlock-trends.md +238 -0
  26. package/templates/_opencrew/core/prompts/sherlock-web.md +220 -0
  27. package/templates/_opencrew/core/runner.pipeline.md +729 -642
  28. package/templates/_opencrew/core/skills.engine.md +490 -429
  29. package/templates/crews/blog-semanal/discovery.template.yaml +35 -0
  30. package/templates/crews/instagram-carrossel/discovery.template.yaml +35 -0
  31. package/templates/crews/lancamento-produto/discovery.template.yaml +39 -0
  32. package/templates/crews/newsletter-mensal/discovery.template.yaml +29 -0
  33. package/templates/skills/README.md +22 -22
  34. package/templates/skills/catalog.json +61 -61
  35. package/templates/skills/instagram-publisher/SKILL.md +119 -119
package/CHANGELOG.md CHANGED
@@ -1,139 +1,139 @@
1
- # Changelog
2
-
3
- All notable changes to opencrew are documented here.
4
- The format is based on [Keep a Changelog](https://keepachangelog.com/).
5
-
6
- ## [1.2.2] — 2026-08-02
7
-
8
- ### Fixed
9
- - **`parseArgs` truncates values containing `=`**: flags like `--description=foo=bar`
10
- no longer lose everything after the second `=`.
11
- - **`version` npm script uses `require()` in ESM project**: extracted to a dedicated
12
- `scripts/stamp-version.js` that uses proper ESM imports.
13
- - **`skills.engine.md` numbering was out of order** in Operation 2 (Install a Skill):
14
- steps 3/4 repeated instead of continuing 5–9. Cross-references updated accordingly.
15
- - **`init` now aborts when a workspace already exists** instead of proceeding with
16
- `overwrite: false` (which silently did nothing). It prints instructions to use
17
- `update` or reinstall from scratch.
18
- - **`deleteDir` semantics**: now returns `false` when the path does not exist (was `true`).
19
- - **`.env.example` placeholders** (`[REDACTED:API key param]`) removed — these were
20
- security-redaction artifacts from the tooling, not real file content. No code change.
21
-
22
- ### Added
23
- - **Short flags**: `-y` (yes), `-v` (version), `-h` (help) now work alongside their
24
- `--long-form` equivalents.
25
- - **`OPENCREW_CATALOG_URL` env var**: forks can override the skill catalog base URL
26
- without editing `catalog.json`. Documented in `CONTRIBUTING.md` → Forking.
27
- - **`update` now warns** that catalog skills are fully overwritten before refreshing them.
28
- - **`readJson` error messages now include the file path** (e.g. `Failed to read
29
- /path/to/package.json: file not found`).
30
- - **`pickIdes` validates preselected IDs**: unknown IDs from `--ide` are filtered with
31
- a warning instead of being passed through silently.
32
- - **`c.gray` removed** (unused). **`confirm()` removed** (dead code, never imported).
33
- - **ESLint** (`eslint.config.js` + `npm run lint` + CI step) with `@eslint/js` flat config.
34
- - **55 tests** (up from 30): new coverage for `paths.js`, `ui.js`, `fsx.js` error
35
- scenarios, `normalizeIdes` string input, CLI smoke tests.
36
-
37
- ### Changed
38
- - **CI `npm audit` raised from `moderate` to `high`** to avoid spurious build failures
39
- from dev-dependency vulnerabilities without attack vectors.
40
- - **Playwright config**: `channel: "chrome"` removed — uses bundled Chromium for better
41
- portability. `.mcp.json` now includes a `_comment` field explaining how to upgrade the
42
- pinned `@playwright/mcp` version.
43
- - **Node version check** in `cli.js` now uses a proper semver comparison that handles
44
- `||` ranges (e.g. `>=18.0.0 || >=20.0.0`).
45
-
46
- ### Docs
47
- - **`discovery.prompt.md`**: `crew_code` uniqueness is now self-service (`ls crews/`)
48
- instead of depending on the orchestrator to pass a list.
49
- - **`runner.pipeline.md`**: language contract table documents all fixed PT-BR headers
50
- and the policy for adding new ones.
51
- - **`CONTRIBUTING.md`**: new "Forking" section with catalog URL, package name, and
52
- publish instructions.
53
-
54
- ## [1.2.1] — 2026-08-02
55
-
56
- ### Changed
57
- - **Menu discovery for repair**: the "My crews" menu entry now mentions `repair`, so the
58
- command introduced in 1.2.0 is discoverable from the menu and not only from the command
59
- routing table.
60
- - **README**: standardized the project name as "OpenCrew" in prose (commands and the npm
61
- package name stay lowercase).
62
-
63
- ## [1.2.0] — 2026-08-02
64
-
65
- ### Fixed
66
- - **Crews created without agent names**: some crews rendered their agents' functions
67
- (e.g. "Pesquisador") but not their persona names (e.g. "Pedro Pesquisa"). Root cause:
68
- `build.prompt.md` never specified the `crew-party.csv` schema, so the manifest could be
69
- generated without a `displayName` column — the exact column the Pipeline Runner reads to
70
- render agent names — even though the correct two-word names were present in each
71
- `.agent.md`. Build now documents the full CSV schema (header + example) and enforces it
72
- with a new blocking **Gate 0b: Crew-Party Manifest** that checks `displayName` exists and
73
- matches each agent's `.agent.md` `name:`.
74
-
75
- ### Added
76
- - **`/opencrew repair <crew>`**: repairs an already-created crew whose manifest is missing
77
- agent names. It rebuilds `crew-party.csv` from the persona names already stored in each
78
- `.agent.md` (no re-generation of agents, research, or pipeline). New prompt at
79
- `_opencrew/core/prompts/repair.prompt.md`, routed via `AGENTS.md`.
80
-
81
- ### Migration
82
- - To fix an existing crew that shows functions but no names:
83
- 1. `npx @aksp/opencrew update` — refreshes the framework and installs the repair command.
84
- 2. `/opencrew repair <crew>` — rewrites the crew's manifest with the correct names.
85
- `update` intentionally never touches `crews/`, so the repair step is required in addition
86
- to updating.
87
-
88
- ## [1.1.0] — 2026-08-01
89
-
90
- ### Fixed
91
- - **Skill catalog URLs**: `/opencrew install` now fetches skills from the correct fork
92
- (`alberthpalhares/opencrew/templates/skills/`) instead of the upstream OpenSquad repo.
93
- - **Publish workflow**: restored `push: tags` as the sole trigger — the actual release
94
- flow is `npm version` + `git push --tags`, not GitHub Releases. Documented in
95
- `CONTRIBUTING.md`.
96
- - **Cross-platform test script**: replaced shell glob (`tests/*.test.js`) with an
97
- explicit file list so `npm test` works on Windows PowerShell + Node 20.
98
- - **CI matrix**: test suite now runs on Ubuntu and Windows on every push/PR.
99
-
100
- ### Added
101
- - **Test suite**: 30 tests (`node:test`) covering `fsx.js`, init, update, IDE bridge
102
- validation, and documentation contracts.
103
- - **CI version-sync check**: `scripts/check-version-sync.js` fails the build if
104
- `.opencrew-version` drifts from `package.json`.
105
- - **Playwright plugin warning**: `init` now warns Claude Code users to disable the
106
- native Playwright extension (opencrew ships its own via `.mcp.json`).
107
-
108
- ### Changed
109
- - **Dashboard opt-in**: Pipeline Runner `state.json` writes are now gated on
110
- `Dashboard: enabled` in `preferences.md` (default: disabled). Removed the
111
- unconditional 10-second sleep at the end of every pipeline run.
112
- - **Smaller fixes**: removed `AskUserQuestion` references from IDE-neutral files,
113
- corrected `update.js` comment about overwrite behavior, pinned `@playwright/mcp`
114
- version, removed stale root `skills/` directory (drifted duplicate of
115
- `templates/skills/`).
116
-
117
- ## [1.0.1] — 2026-08-01
118
-
119
- ### Changed
120
- - API keys for optional skills are now requested conversationally in chat (during crew
121
- creation or skill install) instead of requiring the user to manually copy/edit `.env`
122
- beforehand. Values are collected and written to `.env` automatically.
123
- - `init` no longer tells users to configure `.env` as a next step — no setup is required
124
- to start using opencrew.
125
-
126
- ## [1.0.0] — 2026-08-01
127
-
128
- ### Added
129
- - npm-style installer: `npx @aksp/opencrew init` scaffolds a full opencrew workspace.
130
- - `npx @aksp/opencrew update` refreshes only the framework (`_opencrew/core`, catalog
131
- skills, `AGENTS.md`) while preserving `crews/`, `_memory/`, IDE bridges and `.env`.
132
- - Interactive IDE selection during `init` (or `--ide=`, `--all`, non-interactive fallback).
133
- - Single source of truth: `AGENTS.md`. Every IDE receives only a thin bridge file that
134
- points to it — adding a new IDE is one entry in `src/lib/ides.js`.
135
- - Version stamping via `_opencrew/.opencrew-version`, read by `update`.
136
-
137
- ### Notes
138
- - Reformulation of the OpenSquad framework (originally by Renato Asse) published under
139
- the `opencrew` name by [aksp](https://www.npmjs.com/~aksp). MIT licensed.
1
+ # Changelog
2
+
3
+ All notable changes to opencrew are documented here.
4
+ The format is based on [Keep a Changelog](https://keepachangelog.com/).
5
+
6
+ ## [1.2.2] — 2026-08-02
7
+
8
+ ### Fixed
9
+ - **`parseArgs` truncates values containing `=`**: flags like `--description=foo=bar`
10
+ no longer lose everything after the second `=`.
11
+ - **`version` npm script uses `require()` in ESM project**: extracted to a dedicated
12
+ `scripts/stamp-version.js` that uses proper ESM imports.
13
+ - **`skills.engine.md` numbering was out of order** in Operation 2 (Install a Skill):
14
+ steps 3/4 repeated instead of continuing 5–9. Cross-references updated accordingly.
15
+ - **`init` now aborts when a workspace already exists** instead of proceeding with
16
+ `overwrite: false` (which silently did nothing). It prints instructions to use
17
+ `update` or reinstall from scratch.
18
+ - **`deleteDir` semantics**: now returns `false` when the path does not exist (was `true`).
19
+ - **`.env.example` placeholders** (`[REDACTED:API key param]`) removed — these were
20
+ security-redaction artifacts from the tooling, not real file content. No code change.
21
+
22
+ ### Added
23
+ - **Short flags**: `-y` (yes), `-v` (version), `-h` (help) now work alongside their
24
+ `--long-form` equivalents.
25
+ - **`OPENCREW_CATALOG_URL` env var**: forks can override the skill catalog base URL
26
+ without editing `catalog.json`. Documented in `CONTRIBUTING.md` → Forking.
27
+ - **`update` now warns** that catalog skills are fully overwritten before refreshing them.
28
+ - **`readJson` error messages now include the file path** (e.g. `Failed to read
29
+ /path/to/package.json: file not found`).
30
+ - **`pickIdes` validates preselected IDs**: unknown IDs from `--ide` are filtered with
31
+ a warning instead of being passed through silently.
32
+ - **`c.gray` removed** (unused). **`confirm()` removed** (dead code, never imported).
33
+ - **ESLint** (`eslint.config.js` + `npm run lint` + CI step) with `@eslint/js` flat config.
34
+ - **55 tests** (up from 30): new coverage for `paths.js`, `ui.js`, `fsx.js` error
35
+ scenarios, `normalizeIdes` string input, CLI smoke tests.
36
+
37
+ ### Changed
38
+ - **CI `npm audit` raised from `moderate` to `high`** to avoid spurious build failures
39
+ from dev-dependency vulnerabilities without attack vectors.
40
+ - **Playwright config**: `channel: "chrome"` removed — uses bundled Chromium for better
41
+ portability. `.mcp.json` now includes a `_comment` field explaining how to upgrade the
42
+ pinned `@playwright/mcp` version.
43
+ - **Node version check** in `cli.js` now uses a proper semver comparison that handles
44
+ `||` ranges (e.g. `>=18.0.0 || >=20.0.0`).
45
+
46
+ ### Docs
47
+ - **`discovery.prompt.md`**: `crew_code` uniqueness is now self-service (`ls crews/`)
48
+ instead of depending on the orchestrator to pass a list.
49
+ - **`runner.pipeline.md`**: language contract table documents all fixed PT-BR headers
50
+ and the policy for adding new ones.
51
+ - **`CONTRIBUTING.md`**: new "Forking" section with catalog URL, package name, and
52
+ publish instructions.
53
+
54
+ ## [1.2.1] — 2026-08-02
55
+
56
+ ### Changed
57
+ - **Menu discovery for repair**: the "My crews" menu entry now mentions `repair`, so the
58
+ command introduced in 1.2.0 is discoverable from the menu and not only from the command
59
+ routing table.
60
+ - **README**: standardized the project name as "OpenCrew" in prose (commands and the npm
61
+ package name stay lowercase).
62
+
63
+ ## [1.2.0] — 2026-08-02
64
+
65
+ ### Fixed
66
+ - **Crews created without agent names**: some crews rendered their agents' functions
67
+ (e.g. "Pesquisador") but not their persona names (e.g. "Pedro Pesquisa"). Root cause:
68
+ `build.prompt.md` never specified the `crew-party.csv` schema, so the manifest could be
69
+ generated without a `displayName` column — the exact column the Pipeline Runner reads to
70
+ render agent names — even though the correct two-word names were present in each
71
+ `.agent.md`. Build now documents the full CSV schema (header + example) and enforces it
72
+ with a new blocking **Gate 0b: Crew-Party Manifest** that checks `displayName` exists and
73
+ matches each agent's `.agent.md` `name:`.
74
+
75
+ ### Added
76
+ - **`/opencrew repair <crew>`**: repairs an already-created crew whose manifest is missing
77
+ agent names. It rebuilds `crew-party.csv` from the persona names already stored in each
78
+ `.agent.md` (no re-generation of agents, research, or pipeline). New prompt at
79
+ `_opencrew/core/prompts/repair.prompt.md`, routed via `AGENTS.md`.
80
+
81
+ ### Migration
82
+ - To fix an existing crew that shows functions but no names:
83
+ 1. `npx @aksp/opencrew update` — refreshes the framework and installs the repair command.
84
+ 2. `/opencrew repair <crew>` — rewrites the crew's manifest with the correct names.
85
+ `update` intentionally never touches `crews/`, so the repair step is required in addition
86
+ to updating.
87
+
88
+ ## [1.1.0] — 2026-08-01
89
+
90
+ ### Fixed
91
+ - **Skill catalog URLs**: `/opencrew install` now fetches skills from the correct fork
92
+ (`alberthpalhares/opencrew/templates/skills/`) instead of the upstream OpenSquad repo.
93
+ - **Publish workflow**: restored `push: tags` as the sole trigger — the actual release
94
+ flow is `npm version` + `git push --tags`, not GitHub Releases. Documented in
95
+ `CONTRIBUTING.md`.
96
+ - **Cross-platform test script**: replaced shell glob (`tests/*.test.js`) with an
97
+ explicit file list so `npm test` works on Windows PowerShell + Node 20.
98
+ - **CI matrix**: test suite now runs on Ubuntu and Windows on every push/PR.
99
+
100
+ ### Added
101
+ - **Test suite**: 30 tests (`node:test`) covering `fsx.js`, init, update, IDE bridge
102
+ validation, and documentation contracts.
103
+ - **CI version-sync check**: `scripts/check-version-sync.js` fails the build if
104
+ `.opencrew-version` drifts from `package.json`.
105
+ - **Playwright plugin warning**: `init` now warns Claude Code users to disable the
106
+ native Playwright extension (opencrew ships its own via `.mcp.json`).
107
+
108
+ ### Changed
109
+ - **Dashboard opt-in**: Pipeline Runner `state.json` writes are now gated on
110
+ `Dashboard: enabled` in `preferences.md` (default: disabled). Removed the
111
+ unconditional 10-second sleep at the end of every pipeline run.
112
+ - **Smaller fixes**: removed `AskUserQuestion` references from IDE-neutral files,
113
+ corrected `update.js` comment about overwrite behavior, pinned `@playwright/mcp`
114
+ version, removed stale root `skills/` directory (drifted duplicate of
115
+ `templates/skills/`).
116
+
117
+ ## [1.0.1] — 2026-08-01
118
+
119
+ ### Changed
120
+ - API keys for optional skills are now requested conversationally in chat (during crew
121
+ creation or skill install) instead of requiring the user to manually copy/edit `.env`
122
+ beforehand. Values are collected and written to `.env` automatically.
123
+ - `init` no longer tells users to configure `.env` as a next step — no setup is required
124
+ to start using opencrew.
125
+
126
+ ## [1.0.0] — 2026-08-01
127
+
128
+ ### Added
129
+ - npm-style installer: `npx @aksp/opencrew init` scaffolds a full opencrew workspace.
130
+ - `npx @aksp/opencrew update` refreshes only the framework (`_opencrew/core`, catalog
131
+ skills, `AGENTS.md`) while preserving `crews/`, `_memory/`, IDE bridges and `.env`.
132
+ - Interactive IDE selection during `init` (or `--ide=`, `--all`, non-interactive fallback).
133
+ - Single source of truth: `AGENTS.md`. Every IDE receives only a thin bridge file that
134
+ points to it — adding a new IDE is one entry in `src/lib/ides.js`.
135
+ - Version stamping via `_opencrew/.opencrew-version`, read by `update`.
136
+
137
+ ### Notes
138
+ - Reformulation of the OpenSquad framework (originally by Renato Asse) published under
139
+ the `opencrew` name by [aksp](https://www.npmjs.com/~aksp). MIT licensed.
package/README.md CHANGED
@@ -1,150 +1,150 @@
1
- # OpenCrew
2
-
3
- [![CI](https://github.com/alberthpalhares/opencrew/actions/workflows/ci.yml/badge.svg)](https://github.com/alberthpalhares/opencrew/actions/workflows/ci.yml)
4
- [![npm](https://img.shields.io/npm/v/%40aksp%2Fopencrew)](https://www.npmjs.com/package/@aksp/opencrew)
5
- [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
6
-
7
- **Crie equipes de agentes de IA que trabalham juntos — direto na sua IDE.**
8
-
9
- > 🇧🇷 This README is in Brazilian Portuguese (PT-BR), the project's primary audience. If
10
- > you don't read Portuguese, use your browser's translator (e.g. Google Translate) or ask
11
- > an AI assistant to translate this page.
12
-
13
- OpenCrew é um framework de orquestração multi-agente. Descreva o que você precisa em
14
- linguagem natural e ele monta um time de agentes especializados que rodam como um pipeline
15
- automatizado, com pontos de aprovação humana. Funciona no Claude Code, Cursor, Codex,
16
- Gemini CLI, OpenCode, Antigravity e mais.
17
-
18
- > **Este não é um framework original — é a minha versão pessoal do OpenSquad.**
19
- > O [OpenSquad](https://github.com/renatoasse/opensquad) foi criado por
20
- > [Renato Asse](https://github.com/renatoasse) ([Comunidade Sem Codar](https://semcodar.com.br)).
21
- > Eu ([aksp](https://www.npmjs.com/~aksp)) uso o OpenSquad no dia a dia e quis melhorar
22
- > algumas coisas para o meu próprio fluxo de trabalho — o `OpenCrew` é essa versão
23
- > reformulada, compartilhada caso ajude outras pessoas também. Todo o crédito pela ideia e
24
- > pelo framework original é do Renato Asse. Veja [Origem e créditos](#origem-e-créditos)
25
- > abaixo. Licenciado sob MIT, assim como o original.
26
-
27
- ---
28
-
29
- ## Instalação
30
-
31
- **Pré-requisito:** Node.js 20+
32
-
33
- ```bash
34
- npx @aksp/opencrew init
35
- ```
36
-
37
- O `init` monta o workspace na pasta atual e pergunta quais IDEs de IA você usa, gerando os
38
- arquivos de integração certos para cada uma. Depois:
39
-
40
- 1. Abra a pasta na sua IDE de IA.
41
- 2. Digite `/opencrew` para começar — a primeira execução configura o perfil da sua empresa.
42
-
43
- Isso já é suficiente para criar e rodar crews: nenhuma configuração prévia, instalação
44
- extra ou chave de API é necessária para começar.
45
-
46
- Algumas **skills opcionais** dependem de serviços externos — por exemplo, publicar no
47
- Instagram, gerar imagens com IA, fazer web scraping (Apify) ou enviar e-mails (Resend). Você
48
- não precisa se preocupar com isso antes de começar: se, ao montar uma crew, o OpenCrew
49
- identificar que ela precisa de uma dessas skills, ele pede a chave direto na conversa
50
- (explicando o que é e onde consegui-la) e salva tudo por conta própria. Não é preciso abrir
51
- nem editar nenhum arquivo manualmente.
52
-
53
- Você pode pré-selecionar as IDEs (pula a pergunta) ou configurar todas de uma vez:
54
-
55
- ```bash
56
- npx @aksp/opencrew init --ide=claude-code,codex
57
- npx @aksp/opencrew init --all
58
- ```
59
-
60
- ## Atualizando
61
-
62
- Atualize o framework sem perder o seu trabalho:
63
-
64
- ```bash
65
- npx @aksp/opencrew update
66
- ```
67
-
68
- O `update` atualiza apenas `_opencrew/core`, as skills do catálogo e o `AGENTS.md`. Suas
69
- `crews/`, memória, integrações de IDE e `.env` continuam intactos.
70
-
71
- ## IDEs suportadas
72
-
73
- | IDE | Arquivo(s) de integração gerado(s) |
74
- |-----|--------------------------|
75
- | Claude Code | `.claude/skills/opencrew/SKILL.md`, `CLAUDE.md` |
76
- | Codex (OpenAI) | `AGENTS.md` (nativo) + `.agents/skills/opencrew/SKILL.md` |
77
- | Cursor | `.cursor/rules/opencrew.mdc` |
78
- | VS Code + Copilot | `.github/copilot-instructions.md` |
79
- | OpenCode | `.opencode/commands/opencrew.md` |
80
- | Antigravity | `.agent/rules/opencrew.md`, `.agent/workflows/opencrew.md` |
81
- | Gemini CLI | `GEMINI.md` |
82
- | Qwen Code | `QWEN.md` |
83
- | Trae | `.trae/rules/opencrew.md` |
84
-
85
- Cada integração é só um ponteiro enxuto para a fonte única de verdade, o **`AGENTS.md`**.
86
-
87
- ## Como funciona
88
-
89
- - **Architect** projeta uma crew a partir da sua descrição (agentes, pipeline, skills).
90
- - **Sherlock** (opcional) analisa perfis de referência para extrair padrões reais de conteúdo.
91
- - **Pipeline Runner** executa a crew, pausando nos checkpoints para sua aprovação.
92
- - **Skills Engine** carrega integrações (scraping, design, publicação, e-mail…) sob demanda,
93
- usando um esquema em duas camadas para manter o consumo de tokens baixo.
94
-
95
- ## Dashboard (opcional)
96
-
97
- O OpenCrew inclui um dashboard visual auto-contido — `dashboard/index.html`, um arquivo
98
- HTML único sem dependências que mostra a execução de uma crew como um escritório virtual
99
- animado (com agentes trabalhando em suas mesas, handoffs entre etapas, e indicador de
100
- progresso).
101
-
102
- Ele é **desligado por padrão** — o Pipeline Runner não escreve `state.json` a menos que
103
- você ligue o recurso (`Dashboard: enabled` em `_opencrew/_memory/preferences.md`, via
104
- `/opencrew settings`). Inclui modo demo embutido para visualização sem precisar rodar uma
105
- crew real.
106
-
107
- ## Comandos (dentro da sua IDE)
108
-
109
- | Comando | O que faz |
110
- |---------|--------------|
111
- | `/opencrew` | Abre o menu principal |
112
- | `/opencrew create <descrição>` | Cria uma nova crew |
113
- | `/opencrew run <nome>` | Executa uma crew |
114
- | `/opencrew list` | Lista suas crews |
115
- | `/opencrew edit <nome>` | Modifica uma crew |
116
- | `/opencrew skills` | Navega / instala / remove skills |
117
-
118
- ## Para mantenedores
119
-
120
- Veja [CONTRIBUTING.md](CONTRIBUTING.md). Regra de ouro: `AGENTS.md` é o único lugar onde
121
- vivem as instruções do sistema; os arquivos por IDE são gerados a partir de `src/lib/ides.js`.
122
-
123
- ## Origem e créditos
124
-
125
- `OpenCrew` é uma **distribuição reformulada do [OpenSquad](https://github.com/renatoasse/opensquad)**,
126
- o framework de orquestração multi-agente criado e mantido por
127
- **[Renato Asse](https://github.com/renatoasse)**, fundador da
128
- [Comunidade Sem Codar](https://semcodar.com.br). O projeto original, seu conceito, o modelo
129
- de agentes, o design do pipeline e o sistema de skills são trabalho dele — dê uma estrela e
130
- siga o [repositório original](https://github.com/renatoasse/opensquad) e assista ao
131
- [vídeo de lançamento](https://www.youtube.com/watch?v=CL1ppI4qHeU).
132
-
133
- Eu uso o OpenSquad no meu dia a dia e fiz algumas mudanças que se encaixam no meu jeito de
134
- trabalhar, que acredito que também podem ajudar outras pessoas. O que esta versão muda em
135
- relação ao original:
136
-
137
- - **Instalador npm no meu escopo** — `npx @aksp/opencrew init` / `update`, com um caminho
138
- de atualização não destrutivo que preserva suas crews, memória e `.env`.
139
- - **Fonte única de verdade para multi-IDE** — um `AGENTS.md` canônico; cada IDE recebe um
140
- arquivo de integração gerado e enxuto, em vez de um documento mantido manualmente para
141
- cada ferramenta.
142
- - **Melhorias de economia de tokens e de invocação de skills** no núcleo do framework.
143
-
144
- Este é um fork independente, feito pela comunidade — **não** é afiliado nem endossado pelo
145
- Renato Asse ou pela Comunidade Sem Codar. Se você quiser o projeto oficial, use
146
- [`npx opensquad init`](https://github.com/renatoasse/opensquad).
147
-
148
- ## Licença
149
-
150
- MIT — veja [LICENSE](LICENSE). Framework OpenSquad original © Renato Asse, também MIT.
1
+ # OpenCrew
2
+
3
+ [![CI](https://github.com/alberthpalhares/opencrew/actions/workflows/ci.yml/badge.svg)](https://github.com/alberthpalhares/opencrew/actions/workflows/ci.yml)
4
+ [![npm](https://img.shields.io/npm/v/%40aksp%2Fopencrew)](https://www.npmjs.com/package/@aksp/opencrew)
5
+ [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
6
+
7
+ **Crie equipes de agentes de IA que trabalham juntos — direto na sua IDE.**
8
+
9
+ > 🇧🇷 This README is in Brazilian Portuguese (PT-BR), the project's primary audience. If
10
+ > you don't read Portuguese, use your browser's translator (e.g. Google Translate) or ask
11
+ > an AI assistant to translate this page.
12
+
13
+ OpenCrew é um framework de orquestração multi-agente. Descreva o que você precisa em
14
+ linguagem natural e ele monta um time de agentes especializados que rodam como um pipeline
15
+ automatizado, com pontos de aprovação humana. Funciona no Claude Code, Cursor, Codex,
16
+ Gemini CLI, OpenCode, Antigravity e mais.
17
+
18
+ > **Este não é um framework original — é a minha versão pessoal do OpenSquad.**
19
+ > O [OpenSquad](https://github.com/renatoasse/opensquad) foi criado por
20
+ > [Renato Asse](https://github.com/renatoasse) ([Comunidade Sem Codar](https://semcodar.com.br)).
21
+ > Eu ([aksp](https://www.npmjs.com/~aksp)) uso o OpenSquad no dia a dia e quis melhorar
22
+ > algumas coisas para o meu próprio fluxo de trabalho — o `OpenCrew` é essa versão
23
+ > reformulada, compartilhada caso ajude outras pessoas também. Todo o crédito pela ideia e
24
+ > pelo framework original é do Renato Asse. Veja [Origem e créditos](#origem-e-créditos)
25
+ > abaixo. Licenciado sob MIT, assim como o original.
26
+
27
+ ---
28
+
29
+ ## Instalação
30
+
31
+ **Pré-requisito:** Node.js 20+
32
+
33
+ ```bash
34
+ npx @aksp/opencrew init
35
+ ```
36
+
37
+ O `init` monta o workspace na pasta atual e pergunta quais IDEs de IA você usa, gerando os
38
+ arquivos de integração certos para cada uma. Depois:
39
+
40
+ 1. Abra a pasta na sua IDE de IA.
41
+ 2. Digite `/opencrew` para começar — a primeira execução configura o perfil da sua empresa.
42
+
43
+ Isso já é suficiente para criar e rodar crews: nenhuma configuração prévia, instalação
44
+ extra ou chave de API é necessária para começar.
45
+
46
+ Algumas **skills opcionais** dependem de serviços externos — por exemplo, publicar no
47
+ Instagram, gerar imagens com IA, fazer web scraping (Apify) ou enviar e-mails (Resend). Você
48
+ não precisa se preocupar com isso antes de começar: se, ao montar uma crew, o OpenCrew
49
+ identificar que ela precisa de uma dessas skills, ele pede a chave direto na conversa
50
+ (explicando o que é e onde consegui-la) e salva tudo por conta própria. Não é preciso abrir
51
+ nem editar nenhum arquivo manualmente.
52
+
53
+ Você pode pré-selecionar as IDEs (pula a pergunta) ou configurar todas de uma vez:
54
+
55
+ ```bash
56
+ npx @aksp/opencrew init --ide=claude-code,codex
57
+ npx @aksp/opencrew init --all
58
+ ```
59
+
60
+ ## Atualizando
61
+
62
+ Atualize o framework sem perder o seu trabalho:
63
+
64
+ ```bash
65
+ npx @aksp/opencrew update
66
+ ```
67
+
68
+ O `update` atualiza apenas `_opencrew/core`, as skills do catálogo e o `AGENTS.md`. Suas
69
+ `crews/`, memória, integrações de IDE e `.env` continuam intactos.
70
+
71
+ ## IDEs suportadas
72
+
73
+ | IDE | Arquivo(s) de integração gerado(s) |
74
+ |-----|--------------------------|
75
+ | Claude Code | `.claude/skills/opencrew/SKILL.md`, `CLAUDE.md` |
76
+ | Codex (OpenAI) | `AGENTS.md` (nativo) + `.agents/skills/opencrew/SKILL.md` |
77
+ | Cursor | `.cursor/rules/opencrew.mdc` |
78
+ | VS Code + Copilot | `.github/copilot-instructions.md` |
79
+ | OpenCode | `.opencode/commands/opencrew.md` |
80
+ | Antigravity | `.agent/rules/opencrew.md`, `.agent/workflows/opencrew.md` |
81
+ | Gemini CLI | `GEMINI.md` |
82
+ | Qwen Code | `QWEN.md` |
83
+ | Trae | `.trae/rules/opencrew.md` |
84
+
85
+ Cada integração é só um ponteiro enxuto para a fonte única de verdade, o **`AGENTS.md`**.
86
+
87
+ ## Como funciona
88
+
89
+ - **Architect** projeta uma crew a partir da sua descrição (agentes, pipeline, skills).
90
+ - **Sherlock** (opcional) analisa perfis de referência para extrair padrões reais de conteúdo.
91
+ - **Pipeline Runner** executa a crew, pausando nos checkpoints para sua aprovação.
92
+ - **Skills Engine** carrega integrações (scraping, design, publicação, e-mail…) sob demanda,
93
+ usando um esquema em duas camadas para manter o consumo de tokens baixo.
94
+
95
+ ## Dashboard (opcional)
96
+
97
+ O OpenCrew inclui um dashboard visual auto-contido — `dashboard/index.html`, um arquivo
98
+ HTML único sem dependências que mostra a execução de uma crew como um escritório virtual
99
+ animado (com agentes trabalhando em suas mesas, handoffs entre etapas, e indicador de
100
+ progresso).
101
+
102
+ Ele é **desligado por padrão** — o Pipeline Runner não escreve `state.json` a menos que
103
+ você ligue o recurso (`Dashboard: enabled` em `_opencrew/_memory/preferences.md`, via
104
+ `/opencrew settings`). Inclui modo demo embutido para visualização sem precisar rodar uma
105
+ crew real.
106
+
107
+ ## Comandos (dentro da sua IDE)
108
+
109
+ | Comando | O que faz |
110
+ |---------|--------------|
111
+ | `/opencrew` | Abre o menu principal |
112
+ | `/opencrew create <descrição>` | Cria uma nova crew |
113
+ | `/opencrew run <nome>` | Executa uma crew |
114
+ | `/opencrew list` | Lista suas crews |
115
+ | `/opencrew edit <nome>` | Modifica uma crew |
116
+ | `/opencrew skills` | Navega / instala / remove skills |
117
+
118
+ ## Para mantenedores
119
+
120
+ Veja [CONTRIBUTING.md](CONTRIBUTING.md). Regra de ouro: `AGENTS.md` é o único lugar onde
121
+ vivem as instruções do sistema; os arquivos por IDE são gerados a partir de `src/lib/ides.js`.
122
+
123
+ ## Origem e créditos
124
+
125
+ `OpenCrew` é uma **distribuição reformulada do [OpenSquad](https://github.com/renatoasse/opensquad)**,
126
+ o framework de orquestração multi-agente criado e mantido por
127
+ **[Renato Asse](https://github.com/renatoasse)**, fundador da
128
+ [Comunidade Sem Codar](https://semcodar.com.br). O projeto original, seu conceito, o modelo
129
+ de agentes, o design do pipeline e o sistema de skills são trabalho dele — dê uma estrela e
130
+ siga o [repositório original](https://github.com/renatoasse/opensquad) e assista ao
131
+ [vídeo de lançamento](https://www.youtube.com/watch?v=CL1ppI4qHeU).
132
+
133
+ Eu uso o OpenSquad no meu dia a dia e fiz algumas mudanças que se encaixam no meu jeito de
134
+ trabalhar, que acredito que também podem ajudar outras pessoas. O que esta versão muda em
135
+ relação ao original:
136
+
137
+ - **Instalador npm no meu escopo** — `npx @aksp/opencrew init` / `update`, com um caminho
138
+ de atualização não destrutivo que preserva suas crews, memória e `.env`.
139
+ - **Fonte única de verdade para multi-IDE** — um `AGENTS.md` canônico; cada IDE recebe um
140
+ arquivo de integração gerado e enxuto, em vez de um documento mantido manualmente para
141
+ cada ferramenta.
142
+ - **Melhorias de economia de tokens e de invocação de skills** no núcleo do framework.
143
+
144
+ Este é um fork independente, feito pela comunidade — **não** é afiliado nem endossado pelo
145
+ Renato Asse ou pela Comunidade Sem Codar. Se você quiser o projeto oficial, use
146
+ [`npx opensquad init`](https://github.com/renatoasse/opensquad).
147
+
148
+ ## Licença
149
+
150
+ MIT — veja [LICENSE](LICENSE). Framework OpenSquad original © Renato Asse, também MIT.