@aksp/opencrew 1.6.1 → 1.6.3
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/CHANGELOG.md +66 -0
- package/README.md +20 -8
- package/package.json +2 -2
- package/src/cli.js +15 -38
- package/src/commands/init.js +41 -44
- package/src/commands/update.js +78 -75
- package/src/lib/blocos.js +148 -0
- package/src/lib/deteccao.js +69 -0
- package/src/lib/fsx.js +1 -55
- package/src/lib/ides.js +4 -0
- package/src/lib/legado.js +142 -0
- package/src/lib/manifest.js +67 -26
- package/src/lib/mcp.js +131 -0
- package/src/lib/migrations.js +77 -74
- package/src/lib/node-version.js +43 -0
- package/src/lib/prompts.js +25 -2
- package/src/lib/resumo.js +125 -0
- package/templates/.mcp.json +1 -1
- package/templates/_opencrew/.opencrew-version +1 -1
- package/templates/_opencrew/core/best-practices/social-networks-publishing.md +14 -14
- package/templates/_opencrew/core/prompts/export.prompt.md +1 -1
- package/templates/_opencrew/core/prompts/sherlock-shared.md +5 -5
- package/templates/_opencrew/core/runner.pipeline.md +32 -12
- package/templates/_opencrew/core/scripts/comum.mjs +49 -4
- package/templates/_opencrew/core/scripts/conferir-fontes/busca.mjs +42 -3
- package/templates/_opencrew/core/scripts/conferir-fontes/relatorio.mjs +18 -6
- package/templates/_opencrew/core/scripts/conferir-fontes.mjs +97 -39
- package/templates/_opencrew/core/scripts/verificar/regras.mjs +32 -1
- package/templates/_opencrew/core/scripts/verificar.mjs +7 -4
- package/templates/_opencrew/core/skills.engine.md +7 -3
- package/templates/gitignore +1 -0
- package/templates/skills/blotato/SKILL.md +39 -10
- package/templates/skills/image-ai-generator/SKILL.md +18 -5
- package/templates/skills/image-ai-generator/scripts/generate.py +52 -10
- package/templates/skills/instagram-publisher/SKILL.md +4 -0
- package/templates/skills/opencrew-skill-creator/references/skill-format.md +1 -0
- package/templates/skills/resend/SKILL.md +52 -13
|
@@ -19,6 +19,7 @@ mcp:
|
|
|
19
19
|
command: npx
|
|
20
20
|
args: ["-y", "resend-mcp"]
|
|
21
21
|
transport: stdio
|
|
22
|
+
side_effects: irreversible
|
|
22
23
|
env:
|
|
23
24
|
- RESEND_API_KEY
|
|
24
25
|
categories: [email, automation, communication]
|
|
@@ -34,17 +35,53 @@ so the crew only needs to compose the content and call the MCP tools.
|
|
|
34
35
|
|
|
35
36
|
## Instructions
|
|
36
37
|
|
|
38
|
+
### Confirmation (before any send, schedule or delete)
|
|
39
|
+
|
|
40
|
+
Sending is **irreversible**: an e-mail cannot be taken back once it leaves. The rule below is
|
|
41
|
+
about the **action**, whatever the tool is called on the server: before ANY call that sends,
|
|
42
|
+
schedules or deletes, follow this order. The messages to the user are in PT-BR, as written here.
|
|
43
|
+
|
|
44
|
+
1. Prepare **from**, **to**, **subject**, **body** (HTML or plain text) and attachments. Call no
|
|
45
|
+
sending tool yet.
|
|
46
|
+
2. **Preview (prévia)** — show the user exactly this, filled in:
|
|
47
|
+
```
|
|
48
|
+
Vou enviar este e-mail:
|
|
49
|
+
De: {remetente}
|
|
50
|
+
Para: {N} destinatário(s): {até 10 endereços}… e mais {N-10}
|
|
51
|
+
Assunto: {assunto}
|
|
52
|
+
Início do texto: {3 primeiras linhas}
|
|
53
|
+
Anexos: {nomes}, ou nenhum
|
|
54
|
+
Quando: agora, ou agendado para {data e hora}
|
|
55
|
+
Para enviar, responda com a palavra enviar. Qualquer outra resposta cancela.
|
|
56
|
+
```
|
|
57
|
+
(`{N}` is the total of recipients — to, CC and BCC; in a batch, of all the e-mails together.
|
|
58
|
+
List at most 10 addresses; "… e mais {N-10}" only when there are more. `Quando`: write `agora`
|
|
59
|
+
or `agendado para …`. `Anexos`: the file names, or `nenhum`.)
|
|
60
|
+
3. Wait for the word **enviar**. Any other answer — including silence, "ok" or "sim" — cancels:
|
|
61
|
+
say "Nenhum e-mail foi enviado." and stop.
|
|
62
|
+
4. Only after the word: make **one single call** — `send_email` for one e-mail,
|
|
63
|
+
`batch_send_emails` for a batch.
|
|
64
|
+
5. On success: check the response for the `id` (one per item in a batch) and save it to the step
|
|
65
|
+
output file immediately.
|
|
66
|
+
6. On failure, timeout or missing answer: do NOT repeat the call again, in this step or in a retry.
|
|
67
|
+
Tell the user: "⚠️ Não recebi a confirmação do Resend. O e-mail pode já ter sido enviado.
|
|
68
|
+
Confira no painel antes de tentar de novo. Não vou repetir sozinho."
|
|
69
|
+
7. One confirmation is worth one send. If this step runs again in the same run (a retry, or back
|
|
70
|
+
from a rejected review), show the preview again, after this line: "Este passo já tentou enviar
|
|
71
|
+
nesta execução. Confira se saiu antes de confirmar de novo." — and wait for the word.
|
|
72
|
+
8. A call that **deletes** (removing a contact or a domain) follows the same order with its own
|
|
73
|
+
word: "Vou apagar isto: {o que será apagado}. Para apagar, responda com a palavra apagar.
|
|
74
|
+
Qualquer outra resposta cancela." Any other answer: "Nada foi apagado."
|
|
75
|
+
|
|
37
76
|
### Sending a single email
|
|
38
77
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
3. Check the response for a successful `id` — that confirms the email was queued.
|
|
78
|
+
Fields: **from**, **to**, **subject** and **body**; a successful `id` in the response confirms the
|
|
79
|
+
e-mail was queued.
|
|
42
80
|
|
|
43
81
|
### Sending a batch
|
|
44
82
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
3. Each item in the response will have its own `id` or error.
|
|
83
|
+
Build an array of email objects (same fields as single send). Each item in the response has its
|
|
84
|
+
own `id` or error — report both; never send the failed ones again on your own.
|
|
48
85
|
|
|
49
86
|
### Attachments
|
|
50
87
|
|
|
@@ -52,25 +89,27 @@ Pass attachments as an array with `filename`, `path` (local file), `url`, or `co
|
|
|
52
89
|
|
|
53
90
|
### Scheduling
|
|
54
91
|
|
|
55
|
-
Include a `scheduled_at` field (ISO 8601 datetime) to schedule future delivery.
|
|
92
|
+
Include a `scheduled_at` field (ISO 8601 datetime) to schedule future delivery. A scheduled e-mail
|
|
93
|
+
asks for the same preview and the same word, with the date and time on the `Quando` line.
|
|
56
94
|
|
|
57
95
|
## Best practices
|
|
58
96
|
|
|
59
97
|
- Validate **from** against a verified domain before sending — Resend rejects unverified senders.
|
|
60
98
|
- Keep subject lines under 80 characters for better deliverability.
|
|
61
99
|
- For batch sends, group by shared content to reduce payload size.
|
|
62
|
-
- Always check the response for errors and surface them to the user rather than silently failing
|
|
100
|
+
- Always check the response for errors and surface them to the user rather than silently failing
|
|
101
|
+
— and never by sending again.
|
|
63
102
|
- When composing HTML emails, keep the markup simple — most email clients ignore complex CSS.
|
|
64
103
|
|
|
65
104
|
## Available operations
|
|
66
105
|
|
|
67
|
-
- **Send Email** — Single email with HTML/text body, attachments, CC/BCC, reply-to
|
|
68
|
-
- **Batch Send** — Multiple emails in one call
|
|
69
|
-
- **Schedule Email** — Queue an email for future delivery
|
|
106
|
+
- **Send Email** — Single email with HTML/text body, attachments, CC/BCC, reply-to (only after the word)
|
|
107
|
+
- **Batch Send** — Multiple emails in one call (only after the word)
|
|
108
|
+
- **Schedule Email** — Queue an email for future delivery (only after the word)
|
|
70
109
|
- **List/Get Emails** — Check delivery status of sent emails
|
|
71
110
|
- **Cancel Email** — Cancel a scheduled email before it sends
|
|
72
|
-
- **Manage Contacts** — Create, list, update, and remove contacts from audiences
|
|
73
|
-
- **Manage Domains** — Add and verify sender domains
|
|
111
|
+
- **Manage Contacts** — Create, list, update, and remove contacts from audiences (removing asks for the word `apagar`)
|
|
112
|
+
- **Manage Domains** — Add and verify sender domains (removing asks for the word `apagar`)
|
|
74
113
|
|
|
75
114
|
## Setup
|
|
76
115
|
|