@pathbit/agentdevkit 0.0.9 → 0.0.11
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/.pbai4devs/COMPATIBILIDADE.md +6 -0
- package/.pbai4devs/INSTRUCTIONS.md +3 -0
- package/.pbai4devs/agents/README.md +19 -0
- package/.pbai4devs/agents/auditor-seguranca/AGENT.md +20 -0
- package/.pbai4devs/agents/auditor-seguranca/antigravity.yaml +8 -0
- package/.pbai4devs/agents/auditor-seguranca/claude.yaml +5 -0
- package/.pbai4devs/agents/auditor-seguranca/cursor.yaml +5 -0
- package/.pbai4devs/agents/auditor-seguranca/gemini.yaml +6 -0
- package/.pbai4devs/agents/auditor-seguranca/github.yaml +5 -0
- package/.pbai4devs/agents/auditor-seguranca/kimi-code.yaml +5 -0
- package/.pbai4devs/agents/auditor-seguranca/mimocode.yaml +8 -0
- package/.pbai4devs/agents/auditor-seguranca/opencode.yaml +11 -0
- package/.pbai4devs/agents/documentador/AGENT.md +19 -0
- package/.pbai4devs/agents/documentador/antigravity.yaml +8 -0
- package/.pbai4devs/agents/documentador/claude.yaml +5 -0
- package/.pbai4devs/agents/documentador/cursor.yaml +5 -0
- package/.pbai4devs/agents/documentador/gemini.yaml +6 -0
- package/.pbai4devs/agents/documentador/github.yaml +5 -0
- package/.pbai4devs/agents/documentador/kimi-code.yaml +5 -0
- package/.pbai4devs/agents/documentador/mimocode.yaml +8 -0
- package/.pbai4devs/agents/documentador/opencode.yaml +11 -0
- package/.pbai4devs/agents/implementador/AGENT.md +20 -0
- package/.pbai4devs/agents/implementador/antigravity.yaml +8 -0
- package/.pbai4devs/agents/implementador/claude.yaml +5 -0
- package/.pbai4devs/agents/implementador/cursor.yaml +5 -0
- package/.pbai4devs/agents/implementador/gemini.yaml +6 -0
- package/.pbai4devs/agents/implementador/github.yaml +5 -0
- package/.pbai4devs/agents/implementador/kimi-code.yaml +5 -0
- package/.pbai4devs/agents/implementador/mimocode.yaml +8 -0
- package/.pbai4devs/agents/implementador/opencode.yaml +11 -0
- package/.pbai4devs/agents/planejador/AGENT.md +19 -0
- package/.pbai4devs/agents/planejador/antigravity.yaml +8 -0
- package/.pbai4devs/agents/planejador/claude.yaml +5 -0
- package/.pbai4devs/agents/planejador/cursor.yaml +5 -0
- package/.pbai4devs/agents/planejador/gemini.yaml +6 -0
- package/.pbai4devs/agents/planejador/github.yaml +5 -0
- package/.pbai4devs/agents/planejador/kimi-code.yaml +5 -0
- package/.pbai4devs/agents/planejador/mimocode.yaml +8 -0
- package/.pbai4devs/agents/planejador/opencode.yaml +11 -0
- package/.pbai4devs/agents/validador/AGENT.md +19 -0
- package/.pbai4devs/agents/validador/antigravity.yaml +8 -0
- package/.pbai4devs/agents/validador/claude.yaml +5 -0
- package/.pbai4devs/agents/validador/cursor.yaml +5 -0
- package/.pbai4devs/agents/validador/gemini.yaml +6 -0
- package/.pbai4devs/agents/validador/github.yaml +5 -0
- package/.pbai4devs/agents/validador/kimi-code.yaml +5 -0
- package/.pbai4devs/agents/validador/mimocode.yaml +8 -0
- package/.pbai4devs/agents/validador/opencode.yaml +11 -0
- package/.pbai4devs/commands/README.md +13 -0
- package/.pbai4devs/commands/atualizar-documentacao/COMMAND.md +17 -0
- package/.pbai4devs/commands/auditar-seguranca/COMMAND.md +25 -0
- package/.pbai4devs/commands/implementar-entrega/COMMAND.md +20 -0
- package/.pbai4devs/commands/planejar-entrega/COMMAND.md +17 -0
- package/.pbai4devs/commands/preparar-seguranca/COMMAND.md +22 -0
- package/.pbai4devs/commands/validar-entrega/COMMAND.md +18 -0
- package/.pbai4devs/commands/verificar-dependencias/COMMAND.md +18 -0
- package/.pbai4devs/commands/verificar-segredos/COMMAND.md +19 -0
- package/.pbai4devs/external-skills/CATALOG.json +39 -1
- package/.pbai4devs/external-skills/README.md +13 -0
- package/.pbai4devs/rules/README.md +4 -0
- package/.pbai4devs/rules/execucao-local/RULE.md +20 -0
- package/.pbai4devs/rules/execucao-local/cursor.yaml +4 -0
- package/.pbai4devs/rules/seguranca/RULE.md +19 -0
- package/.pbai4devs/rules/seguranca/cursor.yaml +4 -0
- package/.pbai4devs/scripts/README.md +1 -0
- package/.pbai4devs/scripts/auditar-seguranca/README.md +57 -0
- package/.pbai4devs/scripts/auditar-seguranca/SCRIPT.mjs +411 -0
- package/.pbai4devs/scripts/auditar-seguranca/database-zip.mjs +143 -0
- package/.pbai4devs/scripts/auditar-seguranca/rules/javascript.yml +50 -0
- package/.pbai4devs/scripts/auditar-seguranca/tests/SMOKE.mjs +74 -0
- package/.pbai4devs/scripts/auditar-seguranca/tests/TEST.mjs +247 -0
- package/.pbai4devs/scripts/auditar-seguranca/tests/zip-fixture.mjs +45 -0
- package/.pbai4devs/scripts/lib/native-release.mjs +193 -0
- package/.pbai4devs/scripts/preparar-ferramentas/README.md +8 -2
- package/.pbai4devs/scripts/preparar-ferramentas/SCRIPT.mjs +46 -16
- package/.pbai4devs/scripts/preparar-ferramentas/tests/TEST.mjs +2 -0
- package/.pbai4devs/scripts/preparar-ferramentas/tests/native-release.test.mjs +103 -0
- package/.pbai4devs/skills/README.md +10 -2
- package/.pbai4devs/skills/projeto/preparar-ferramentas/SKILL.md +5 -1
- package/.pbai4devs/skills/seguranca/REFERENCE.md +104 -0
- package/.pbai4devs/skills/seguranca/corrigir-vulnerabilidade/SKILL.md +27 -0
- package/.pbai4devs/skills/seguranca/modelar-ameacas/SKILL.md +25 -0
- package/.pbai4devs/skills/seguranca/revisar-autorizacao/SKILL.md +29 -0
- package/.pbai4devs/skills/seguranca/revisar-seguranca/SKILL.md +27 -0
- package/.pbai4devs/templates/README.md +2 -0
- package/.pbai4devs/templates/revisao-seguranca/TEMPLATE.md +33 -0
- package/.pbai4devs/tools/README.md +11 -3
- package/.pbai4devs/tools/gitleaks/README.md +22 -0
- package/.pbai4devs/tools/gitleaks/SCRIPT.mjs +5 -0
- package/.pbai4devs/tools/gitleaks/TOOL.json +67 -0
- package/.pbai4devs/tools/opengrep/README.md +22 -0
- package/.pbai4devs/tools/opengrep/SCRIPT.mjs +5 -0
- package/.pbai4devs/tools/opengrep/TOOL.json +71 -0
- package/.pbai4devs/tools/osv-scanner/README.md +23 -0
- package/.pbai4devs/tools/osv-scanner/SCRIPT.mjs +5 -0
- package/.pbai4devs/tools/osv-scanner/TOOL.json +70 -0
- package/CHANGELOG.md +17 -0
- package/README.en.md +18 -5
- package/README.es.md +19 -6
- package/README.md +16 -3
- package/docs/README.md +9 -5
- package/docs/guides/README.md +3 -1
- package/docs/guides/cli.md +3 -0
- package/docs/guides/installation.md +61 -11
- package/docs/guides/prerequisites.md +123 -0
- package/docs/guides/resources.md +48 -1
- package/docs/guides/security-references.md +97 -0
- package/docs/guides/security.md +32 -0
- package/docs/guides/tools-and-testing.md +2 -1
- package/docs/guides/troubleshooting.md +23 -7
- package/docs/maintainers/README.md +1 -1
- package/docs/maintainers/maintenance.md +15 -4
- package/docs/maintainers/packages.md +45 -13
- package/docs/product/prd.md +4 -1
- package/docs/product/roadmap.md +4 -0
- package/docs/specs/README.md +3 -0
- package/docs/specs/dual-registry/SPEC.md +43 -0
- package/docs/specs/security-ecosystem/README.md +9 -0
- package/docs/specs/security-ecosystem/SPEC.md +53 -0
- package/docs/specs/v0.0.10/README.md +9 -0
- package/docs/specs/v0.0.10/SPEC.md +42 -0
- package/package.json +1 -1
|
@@ -9,23 +9,58 @@ O pacote traz o gerador e as fontes compartilhadas. A instalação prepara
|
|
|
9
9
|
|
|
10
10
|
## Pré-requisitos
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
Sem Node/npm, o agente precisa primeiro instalar o runtime pelo mecanismo do
|
|
17
|
-
sistema operacional e continuar. `npx` não funciona antes dessa instalação.
|
|
18
|
-
O [guia de preparo][bootstrap] explica as duas situações.
|
|
12
|
+
Prepare [Node.js 24+ com npm e npx](prerequisites.md) no Windows, macOS ou Linux.
|
|
13
|
+
O guia inclui instalação manual e como pedir ao agente para preparar a máquina.
|
|
14
|
+
Git é opcional para instalar o kit. Com Node 18–23 existente, o launcher pode
|
|
15
|
+
preparar Node 24 localmente usando `tar`; veja o [bootstrap][bootstrap].
|
|
19
16
|
|
|
20
17
|
## Instalar
|
|
21
18
|
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
Os dois registries oferecem o mesmo [`@pathbit/agentdevkit`](../maintainers/packages.md).
|
|
20
|
+
Escolha um deles e execute na pasta do projeto.
|
|
21
|
+
|
|
22
|
+
### npm público
|
|
23
|
+
|
|
24
|
+
É o caminho padrão e não exige conta nem login:
|
|
24
25
|
|
|
25
26
|
```console
|
|
26
27
|
npx @pathbit/agentdevkit init
|
|
27
28
|
```
|
|
28
29
|
|
|
30
|
+
Para escolher explicitamente esse registry:
|
|
31
|
+
|
|
32
|
+
```console
|
|
33
|
+
npx --registry=https://registry.npmjs.org @pathbit/agentdevkit init
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### GitHub Packages
|
|
37
|
+
|
|
38
|
+
O pacote é público, mas esse registry exige autenticação para baixar.
|
|
39
|
+
Crie um [personal access token clássico][tokens] com `read:packages`.
|
|
40
|
+
Autentique uma vez no seu computador:
|
|
41
|
+
|
|
42
|
+
```console
|
|
43
|
+
npm login --registry=https://npm.pkg.github.com --auth-type=legacy --scope=
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Informe seu usuário do GitHub e use o token no campo de senha. O npm guarda
|
|
47
|
+
a credencial no arquivo do seu usuário, vinculada ao host do GitHub.
|
|
48
|
+
`--scope=` evita criar um mapeamento permanente do escopo; nunca coloque
|
|
49
|
+
o token nos comandos compartilhados ou no repositório. Veja a
|
|
50
|
+
[autenticação oficial][github-auth].
|
|
51
|
+
|
|
52
|
+
Depois instale com npx:
|
|
53
|
+
|
|
54
|
+
```console
|
|
55
|
+
npx --registry=https://npm.pkg.github.com @pathbit/agentdevkit init
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
As opções de npx, como `--registry`, ficam **antes** do nome do pacote.
|
|
59
|
+
Um `@pathbit:registry` já configurado pode prevalecer sobre essa opção;
|
|
60
|
+
confira o [diagnóstico de registry](troubleshooting.md#download-plataforma-ou-ferramenta-falhando).
|
|
61
|
+
|
|
62
|
+
### Opções e verificação
|
|
63
|
+
|
|
29
64
|
Sem comando adicional, o pacote executa `init`. Em terminal interativo,
|
|
30
65
|
pergunta idioma e agentes. No aplicativo desktop, peça ao agente para reunir
|
|
31
66
|
as escolhas no chat e usar `--lang` e `--agents` na CLI.
|
|
@@ -34,6 +69,19 @@ Consulte [CLI](cli.md) para acrescentar seleção, destino e simulação. `--jso
|
|
|
34
69
|
`--yes`, `--dry-run` ou ausência de terminal interativo evitam perguntas.
|
|
35
70
|
Sem escolha explícita ou salva, `all` mantém todos os clientes compatíveis.
|
|
36
71
|
|
|
72
|
+
Após instalar, confirme a versão, o diagnóstico e os apontamentos:
|
|
73
|
+
|
|
74
|
+
```console
|
|
75
|
+
npx @pathbit/agentdevkit --version
|
|
76
|
+
npx @pathbit/agentdevkit doctor
|
|
77
|
+
npx @pathbit/agentdevkit sync --check
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Se escolheu GitHub Packages, use o mesmo prefixo
|
|
81
|
+
`npx --registry=https://npm.pkg.github.com` nesses comandos. Para fixar a versão,
|
|
82
|
+
use `@pathbit/agentdevkit@0.0.11` no lugar do nome sem versão, em qualquer destino.
|
|
83
|
+
O próximo passo é [preparar as ferramentas](prerequisites.md#depois-de-instalar-o-kit).
|
|
84
|
+
|
|
37
85
|
## O que fica no projeto
|
|
38
86
|
|
|
39
87
|
| Conteúdo | Tratamento |
|
|
@@ -102,7 +150,9 @@ e restauração após falha.
|
|
|
102
150
|
O [fluxo de trabalho](workflow.md) orienta a próxima etapa do projeto.
|
|
103
151
|
Se houver erro, consulte [solução de problemas](troubleshooting.md).
|
|
104
152
|
|
|
105
|
-
[Wiki](../README.md) · [Spec
|
|
153
|
+
[Wiki](../README.md) · [Spec de segurança][spec]
|
|
106
154
|
|
|
107
155
|
[bootstrap]: ../../.pbai4devs/scripts/preparar-ferramentas/BOOTSTRAP.md
|
|
108
|
-
[spec]: ../specs/
|
|
156
|
+
[spec]: ../specs/security-ecosystem/SPEC.md
|
|
157
|
+
[tokens]: https://github.com/settings/tokens
|
|
158
|
+
[github-auth]: https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry#authenticating-to-github-packages
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Instalar Node.js e npm no Windows, macOS ou Linux antes de usar o kit.
|
|
3
|
+
language: pt
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Preparar os pré-requisitos
|
|
7
|
+
|
|
8
|
+
Instale **Node.js 24+ com npm**. O npm inclui o comando `npx`; não é preciso
|
|
9
|
+
instalar Python, Bun ou o AgentDevKit globalmente. Git é opcional para instalar
|
|
10
|
+
o kit e necessário para trabalhar com o controle de versão do projeto.
|
|
11
|
+
|
|
12
|
+
## Confira antes de instalar
|
|
13
|
+
|
|
14
|
+
No terminal do computador ou do agente, execute:
|
|
15
|
+
|
|
16
|
+
```console
|
|
17
|
+
node --version
|
|
18
|
+
npm --version
|
|
19
|
+
npx --version
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Com Node 24+ e os três comandos funcionando, siga para a
|
|
23
|
+
[instalação pelo npm ou GitHub Packages](installation.md#instalar).
|
|
24
|
+
Use o mesmo ambiente em que abrirá o projeto: Windows e WSL, por exemplo,
|
|
25
|
+
têm instalações separadas.
|
|
26
|
+
|
|
27
|
+
## Windows
|
|
28
|
+
|
|
29
|
+
No PowerShell, com [WinGet][winget] disponível:
|
|
30
|
+
|
|
31
|
+
```powershell
|
|
32
|
+
winget install --id OpenJS.NodeJS.LTS --exact --source winget
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Sem WinGet, abra o [download oficial do Node.js][node], selecione uma versão
|
|
36
|
+
LTS 24 ou superior e use o instalador Windows `.msi` da sua arquitetura.
|
|
37
|
+
Mantenha npm e a inclusão no PATH habilitados. Feche e reabra o terminal;
|
|
38
|
+
no VS Code, reabra também o terminal integrado. Repita os três comandos acima.
|
|
39
|
+
|
|
40
|
+
## macOS
|
|
41
|
+
|
|
42
|
+
No [download oficial][node], selecione Node LTS 24 ou superior e o instalador
|
|
43
|
+
macOS `.pkg`. Conclua a instalação, reabra o terminal e confira as versões.
|
|
44
|
+
O instalador inclui npm e npx.
|
|
45
|
+
|
|
46
|
+
Se já usa Homebrew, pode manter esse fluxo:
|
|
47
|
+
|
|
48
|
+
```sh
|
|
49
|
+
brew install node@24
|
|
50
|
+
export PATH="$(brew --prefix node@24)/bin:$PATH"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
A segunda linha vale para o terminal atual. Para outros terminais, siga as
|
|
54
|
+
instruções de PATH exibidas pelo Homebrew; não substitua seu perfil inteiro.
|
|
55
|
+
Veja a [fórmula oficial][brew].
|
|
56
|
+
|
|
57
|
+
## Linux
|
|
58
|
+
|
|
59
|
+
Em Bash ou Zsh, use o [nvm][nvm] para instalar Node 24 no seu usuário.
|
|
60
|
+
Em Debian/Ubuntu, prepare as dependências se faltarem:
|
|
61
|
+
|
|
62
|
+
```sh
|
|
63
|
+
sudo apt-get update
|
|
64
|
+
sudo apt-get install -y curl ca-certificates tar xz-utils
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Em outra distribuição, instale os equivalentes pelo seu gerenciador de pacotes.
|
|
68
|
+
Execute o instalador oficial do nvm e depois instale o Node:
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.41.0/install.sh | bash
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Reabra o terminal para carregar o nvm; então execute:
|
|
75
|
+
|
|
76
|
+
```sh
|
|
77
|
+
nvm install 24
|
|
78
|
+
nvm use 24
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
O nvm configura o perfil do seu usuário e inclui npm/npx com o Node.
|
|
82
|
+
Em Alpine ou outra distribuição com musl, confirme o suporte da versão e
|
|
83
|
+
arquitetura no [download oficial][node]; não use um binário glibc nesse ambiente.
|
|
84
|
+
|
|
85
|
+
## Preparar com ajuda do agente
|
|
86
|
+
|
|
87
|
+
Você também pode pedir no aplicativo ou terminal do seu agente:
|
|
88
|
+
|
|
89
|
+
> Confira Node, npm e npx neste ambiente. Se faltarem, instale Node 24+ pelo
|
|
90
|
+
> mecanismo adequado ao meu sistema, preserve a configuração existente e
|
|
91
|
+
> continue até validar os três comandos. Depois me ajude a escolher npm ou
|
|
92
|
+
> GitHub Packages e os agentes que usarei neste projeto.
|
|
93
|
+
|
|
94
|
+
O agente precisa de acesso ao terminal, à rede e das permissões de instalação
|
|
95
|
+
do sistema. Sem Node/npm, o `npx` ainda não pode executar o kit. Com Node
|
|
96
|
+
18–23 existente, o launcher pode preparar Node 24 localmente; prefira atualizar
|
|
97
|
+
o ambiente para Node 24+ antes de começar.
|
|
98
|
+
|
|
99
|
+
O [bootstrap do kit][bootstrap] usa `tar` nativo quando precisa baixar um
|
|
100
|
+
runtime, verifica o checksum e não altera o PATH permanentemente.
|
|
101
|
+
|
|
102
|
+
## Depois de instalar o kit
|
|
103
|
+
|
|
104
|
+
Na pasta do projeto, prepare e verifique as ferramentas compatíveis:
|
|
105
|
+
|
|
106
|
+
```console
|
|
107
|
+
npx @pathbit/agentdevkit tools setup
|
|
108
|
+
npx @pathbit/agentdevkit tools check all
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Para usar GitHub Packages, acrescente `--registry=https://npm.pkg.github.com`
|
|
112
|
+
antes do nome do pacote, como no [guia de instalação](installation.md#github-packages).
|
|
113
|
+
`tools setup base` limita o preparo a navegador e lint. A instalação dos CLIs
|
|
114
|
+
não instala browsers, FFmpeg nem concede permissões desktop; veja os requisitos
|
|
115
|
+
da tarefa em [ferramentas e testes](tools-and-testing.md).
|
|
116
|
+
|
|
117
|
+
[Wiki](../README.md) · [Instalar o kit](installation.md)
|
|
118
|
+
|
|
119
|
+
[node]: https://nodejs.org/en/download
|
|
120
|
+
[winget]: https://learn.microsoft.com/en-us/windows/package-manager/winget/install
|
|
121
|
+
[brew]: https://formulae.brew.sh/formula/node@24
|
|
122
|
+
[nvm]: https://github.com/nvm-sh/nvm#installing-and-updating
|
|
123
|
+
[bootstrap]: ../../.pbai4devs/scripts/preparar-ferramentas/BOOTSTRAP.md
|
package/docs/guides/resources.md
CHANGED
|
@@ -23,7 +23,7 @@ Os caminhos abaixo são relativos a `.pbai4devs/`.
|
|
|
23
23
|
| Skill | Procedimento e decisões. | `skills/<grupo>/<nome>/SKILL.md` |
|
|
24
24
|
| Regra | Convenção aplicada a um contexto. | `rules/<nome>/RULE.md` |
|
|
25
25
|
| Comando | Entrada de um caso de uso. | `commands/<nome>/COMMAND.md` |
|
|
26
|
-
| Agente |
|
|
26
|
+
| Agente | Responsável por uma tarefa. | `agents/<nome>/AGENT.md` |
|
|
27
27
|
| Modelo | Base a preencher. | `templates/<nome>/TEMPLATE.md` |
|
|
28
28
|
| Tool | Configuração e entrada de uma CLI. | `tools/<nome>/TOOL.json` |
|
|
29
29
|
| Script | Automação executável reutilizável. | `scripts/<nome>/SCRIPT.mjs` |
|
|
@@ -32,6 +32,53 @@ Uma skill explica como decidir; um script executa a operação. Um comando
|
|
|
32
32
|
encaminha a essas fontes, sem repetir suas instruções. Uma regra mantém uma
|
|
33
33
|
convenção recorrente; um agente define quem revisa ou executa determinado papel.
|
|
34
34
|
|
|
35
|
+
Uma skill pode orientar o uso de outras skills, comandos e agentes. Quem faz
|
|
36
|
+
essas chamadas é o cliente de IA, dentro das ferramentas e permissões disponíveis.
|
|
37
|
+
Um workflow é a sequência de passos e entregas descrita no comando; não precisa
|
|
38
|
+
ser outro tipo de arquivo ou um agendamento em segundo plano.
|
|
39
|
+
|
|
40
|
+
```mermaid
|
|
41
|
+
flowchart LR
|
|
42
|
+
pedido["Pedido"] --> comando["Comando"]
|
|
43
|
+
comando --> agente["Agente responsável"]
|
|
44
|
+
regras["Regras"] -.-> agente
|
|
45
|
+
agente --> skill["Skill"]
|
|
46
|
+
skill --> script["Script quando necessário"]
|
|
47
|
+
script --> tool["Ferramenta local"]
|
|
48
|
+
tool --> prova["Evidências"]
|
|
49
|
+
prova --> revisao["Revisão independente"]
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
O agente principal reúne resultados e mantém o contexto. Quando um cliente
|
|
53
|
+
não permite delegação aninhada, o especialista devolve o próximo passo ao
|
|
54
|
+
principal. Markdown e links não criam processos nem executam código sozinhos.
|
|
55
|
+
|
|
56
|
+
## Três fluxos completos
|
|
57
|
+
|
|
58
|
+
| Etapa | Comando | Resultado |
|
|
59
|
+
| --- | --- | --- |
|
|
60
|
+
| Planejar | `planejar-entrega` | Dúvidas, plano e aceites. |
|
|
61
|
+
| Implementar | `implementar-entrega` | Código, testes e documentos. |
|
|
62
|
+
| Auditar | `auditar-seguranca` | Sinais locais e triagem. |
|
|
63
|
+
|
|
64
|
+
O planejador combina as skills da fase para reunir as decisões. O implementador
|
|
65
|
+
executa o plano aprovado. O auditor interpreta os scanners preparados por
|
|
66
|
+
`preparar-seguranca` e verifica os controles que exigem contexto.
|
|
67
|
+
|
|
68
|
+
No fluxo de implementação, `validar-entrega` executa as provas e
|
|
69
|
+
`atualizar-documentacao` aciona o documentador. O revisor recebe a entrega
|
|
70
|
+
final por `revisar-entrega`; quem implementou não substitui a revisão independente.
|
|
71
|
+
Falhas retornam ao responsável com evidência e escopo de correção.
|
|
72
|
+
|
|
73
|
+
Na segurança, scanners e análise manual se complementam. Achados confirmados
|
|
74
|
+
seguem `corrigir-vulnerabilidade`; depois são testados de novo. O
|
|
75
|
+
[guia de segurança](security.md) define preparação, limites e resultados.
|
|
76
|
+
|
|
77
|
+
Não busque quantidades iguais por tipo: uma skill atende vários comandos,
|
|
78
|
+
um perfil usa várias skills e uma regra vale em diferentes fluxos. Crie um
|
|
79
|
+
perfil quando houver responsabilidade recorrente e contexto próprio; use
|
|
80
|
+
skill para um procedimento e comando para uma entrada de trabalho clara.
|
|
81
|
+
|
|
35
82
|
Modelos não são documentos aprovados do produto. Ferramentas usam um
|
|
36
83
|
`SCRIPT.mjs` fino para delegar ao instalador comum; não precisam de cópias em
|
|
37
84
|
cada cliente nem de outro instalador escrito do zero.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Ferramentas e skills de segurança locais e open source.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Referências de segurança
|
|
6
|
+
|
|
7
|
+
As verificações do kit executam no computador do projeto. Não exigem conta,
|
|
8
|
+
assinatura ou envio de código a um serviço. Downloads de ferramentas e bases
|
|
9
|
+
públicas são etapas explícitas; a análise usa os arquivos locais.
|
|
10
|
+
|
|
11
|
+
## Ferramentas selecionadas
|
|
12
|
+
|
|
13
|
+
| Ferramenta | Origem e licença | Função |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| [Gitleaks][gitleaks] | Comunidade, MIT | Segredos em arquivos e Git. |
|
|
16
|
+
| [OSV-Scanner][osv] | Google, Apache-2.0 | Dependências, com base OSV local. |
|
|
17
|
+
| [Opengrep][opengrep] | Consórcio, LGPL-2.1 | Código, com regras locais. |
|
|
18
|
+
|
|
19
|
+
O catálogo fixa versões e hashes revisados. `install` verifica o download;
|
|
20
|
+
`check` confere o binário local; `update` aplica o pin revisado no catálogo.
|
|
21
|
+
Nenhum dos três exige Python instalado. O upstream do Gitleaks está focado
|
|
22
|
+
em manutenção e correções; isso deve ser considerado nas próximas revisões.
|
|
23
|
+
|
|
24
|
+
OSV deve usar `--offline`, não somente `--offline-vulnerabilities`.
|
|
25
|
+
A base precisa ser preparada antes: ausência de dados não é resultado limpo.
|
|
26
|
+
Opengrep usa configuração local e checagem de versão desativada; não use
|
|
27
|
+
`--config auto`. O comando de auditoria normaliza os resultados e remove
|
|
28
|
+
segredos e trechos de código dos relatórios.
|
|
29
|
+
|
|
30
|
+
## Complementos por necessidade
|
|
31
|
+
|
|
32
|
+
| Ferramenta | Licença | Quando considerar |
|
|
33
|
+
| --- | --- | --- |
|
|
34
|
+
| [Trivy][trivy] | Apache-2.0 | Imagens, IaC e SBOM. |
|
|
35
|
+
| [ZAP][zap] | Apache-2.0 | Aplicação em execução; exige Java. |
|
|
36
|
+
| [DevSkim][devskim] | MIT | Projetos .NET; exige runtime local. |
|
|
37
|
+
|
|
38
|
+
Esses complementos não são instalados pelo grupo `security`. Uma adoção exige
|
|
39
|
+
testar seu modo local, dependências, versão e licença. No ZAP, instalação não
|
|
40
|
+
inicia proxy, daemon ou ataque; configure identidades de teste e alvo local.
|
|
41
|
+
No Trivy, `--offline-scan` sozinho não bloqueia toda atualização de base.
|
|
42
|
+
|
|
43
|
+
Serviços de análise que exigem conta ficam fora desse fluxo. CodeQL CLI não
|
|
44
|
+
atende ao requisito de código aberto; Bandit e rotinas Python ficam fora do
|
|
45
|
+
runtime adotado. Uma opção gratuita não é automaticamente open source.
|
|
46
|
+
|
|
47
|
+
## Skills de mercado
|
|
48
|
+
|
|
49
|
+
| Fonte | Recurso | Tratamento |
|
|
50
|
+
| --- | --- | --- |
|
|
51
|
+
| [OpenAI][openai] | Práticas e ameaças | Apache-2.0 por pasta. |
|
|
52
|
+
| [GitHub][copilot] | Revisão de segurança | MIT. |
|
|
53
|
+
| [Trail of Bits][tob] | Contexto e diffs | CC-BY-SA-4.0; candidata. |
|
|
54
|
+
|
|
55
|
+
Os [pins e licenças do catálogo][catalog] evitam importar uma origem móvel.
|
|
56
|
+
As quatro skills próprias de segurança já acompanham o kit; referências
|
|
57
|
+
externas são opcionais e lidas por tarefa, sem copiar texto para os clientes.
|
|
58
|
+
Preserve atribuição e share-alike dos recursos da Trail of Bits.
|
|
59
|
+
Uma lista estática de CVEs em uma skill não substitui uma base atualizada.
|
|
60
|
+
|
|
61
|
+
## O artigo como ponto de partida
|
|
62
|
+
|
|
63
|
+
O [artigo compartilhado][article] orientou cinco temas: acesso aos dados,
|
|
64
|
+
autorização no servidor, acesso por ID, segredos e entradas não confiáveis.
|
|
65
|
+
O kit trata essas perguntas com verificações específicas:
|
|
66
|
+
|
|
67
|
+
- PostgreSQL/Supabase usa RLS e políticas; Firebase usa Security Rules.
|
|
68
|
+
Papéis privilegiados e SDKs de servidor precisam de controles próprios.
|
|
69
|
+
- Ocultar um botão não autoriza uma operação. Teste sem sessão e com dois
|
|
70
|
+
usuários ou tenants, incluindo acesso ao objeto de outra identidade.
|
|
71
|
+
- Variáveis enviadas ao bundle são públicas; variáveis do servidor não são
|
|
72
|
+
automaticamente expostas. Um segredo confirmado exige remoção e rotação.
|
|
73
|
+
- Validação de entrada, consultas parametrizadas, codificação de saída,
|
|
74
|
+
controles de upload e limites de uso resolvem riscos diferentes.
|
|
75
|
+
|
|
76
|
+
As referências técnicas são [RLS][rls], [Firebase Rules][firebase],
|
|
77
|
+
[autorização][authz], [segredos][secrets] e [uploads][uploads]. O kit não usa as
|
|
78
|
+
estatísticas do artigo como comprovação de segurança do projeto.
|
|
79
|
+
|
|
80
|
+
[Segurança no fluxo](security.md) · [Recursos](resources.md)
|
|
81
|
+
|
|
82
|
+
[gitleaks]: https://github.com/gitleaks/gitleaks/tree/v8.30.1
|
|
83
|
+
[osv]: https://github.com/google/osv-scanner/tree/v2.7.1
|
|
84
|
+
[opengrep]: https://github.com/opengrep/opengrep/tree/v1.33.1
|
|
85
|
+
[trivy]: https://github.com/aquasecurity/trivy
|
|
86
|
+
[zap]: https://www.zaproxy.org/docs/desktop/start/features/
|
|
87
|
+
[devskim]: https://github.com/microsoft/DevSkim
|
|
88
|
+
[openai]: https://github.com/openai/skills
|
|
89
|
+
[copilot]: https://github.com/github/awesome-copilot
|
|
90
|
+
[tob]: https://github.com/trailofbits/skills
|
|
91
|
+
[catalog]: ../../.pbai4devs/external-skills/CATALOG.json
|
|
92
|
+
[article]: https://manodeyvin.com.br/p/5-vacilacoes-de-seguranca-que-a-ia
|
|
93
|
+
[rls]: https://supabase.com/docs/guides/database/postgres/row-level-security
|
|
94
|
+
[firebase]: https://firebase.google.com/docs/rules
|
|
95
|
+
[authz]: https://cheatsheetseries.owasp.org/cheatsheets/Authorization_Cheat_Sheet.html
|
|
96
|
+
[secrets]: https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html
|
|
97
|
+
[uploads]: https://cheatsheetseries.owasp.org/cheatsheets/File_Upload_Cheat_Sheet.html
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Segurança com scanners locais, triagem e provas de controles.
|
|
3
|
+
language: pt
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Segurança local
|
|
7
|
+
|
|
8
|
+
O kit instala skills, regras, comandos e perfis para revisar segurança.
|
|
9
|
+
Os scanners exigem preparo explícito; nenhuma auditoria ou aplicação começa
|
|
10
|
+
em segundo plano apenas porque os arquivos de instrução foram instalados.
|
|
11
|
+
|
|
12
|
+
O [guia operacional][guide] acompanha o hub no projeto consumidor. Ele explica
|
|
13
|
+
preparo das ferramentas, bases offline, relatório e triagem, além dos testes
|
|
14
|
+
manuais de autorização, isolamento de dados, entradas e abuso.
|
|
15
|
+
|
|
16
|
+
- [Preparar segurança][prepare]: instalar e verificar os scanners locais.
|
|
17
|
+
- [Auditar segurança][audit]: analisar o alvo autorizado e interpretar sinais.
|
|
18
|
+
- [Revisar autorização][authorization]: testar identidade e acesso por recurso.
|
|
19
|
+
- [Modelar ameaças][threats]: antecipar riscos das fronteiras de confiança.
|
|
20
|
+
- [Curadoria](security-references.md): fontes, licenças e ferramentas avaliadas.
|
|
21
|
+
|
|
22
|
+
Use o [mapa do ecossistema](resources.md) para entender como perfis, skills,
|
|
23
|
+
comandos, regras e scripts se conectam. Resultados ficam em `.agent-tests/`;
|
|
24
|
+
scanners sozinhos não aprovam a segurança de um produto.
|
|
25
|
+
|
|
26
|
+
[Wiki](../README.md) · [Ferramentas e testes](tools-and-testing.md)
|
|
27
|
+
|
|
28
|
+
[guide]: ../../.pbai4devs/skills/seguranca/REFERENCE.md
|
|
29
|
+
[prepare]: ../../.pbai4devs/commands/preparar-seguranca/COMMAND.md
|
|
30
|
+
[audit]: ../../.pbai4devs/commands/auditar-seguranca/COMMAND.md
|
|
31
|
+
[authorization]: ../../.pbai4devs/skills/seguranca/revisar-autorizacao/SKILL.md
|
|
32
|
+
[threats]: ../../.pbai4devs/skills/seguranca/modelar-ameacas/SKILL.md
|
|
@@ -11,7 +11,8 @@ nem escolhe a stack da aplicação. Consulte o [catálogo][tools].
|
|
|
11
11
|
|
|
12
12
|
O núcleo usa Node.js 24+ com npm. O launcher aceita Node 18+ e prepara o runtime
|
|
13
13
|
atual quando necessário. Sem Node, o agente precisa instalá-lo pelo mecanismo
|
|
14
|
-
do sistema operacional antes de iniciar `npx
|
|
14
|
+
do sistema operacional antes de iniciar `npx`; siga os
|
|
15
|
+
[pré-requisitos por sistema](prerequisites.md).
|
|
15
16
|
|
|
16
17
|
Para preparar somente o runtime a partir do hub:
|
|
17
18
|
|
|
@@ -29,7 +29,7 @@ agente; arquivos próprios também podem manter uma pasta após a desmarcação.
|
|
|
29
29
|
| Sintoma ou código | Próxima ação |
|
|
30
30
|
| --- | --- |
|
|
31
31
|
| `node` ou `npx` não encontrado | Siga [sem Node/npm][runtime]. |
|
|
32
|
-
| `E401` ou `E403` no registry |
|
|
32
|
+
| `E401` ou `E403` no registry | No npm, confira o destino; no GitHub, confira [token e login][github-install]. |
|
|
33
33
|
| `E404` ao baixar o pacote | Confira registry, versão e permissão. |
|
|
34
34
|
| `E_ARGS` | Confira comando e aspas com `agentdevkit --help`. |
|
|
35
35
|
| `E_MISSING` | Confirme `--target`; inicialize o projeto correto. |
|
|
@@ -96,15 +96,31 @@ Para manter a instalação e sua seleção de clientes, prefira a CLI.
|
|
|
96
96
|
|
|
97
97
|
## Download, plataforma ou ferramenta falhando
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
atualize somente esse escopo e repita a instalação:
|
|
99
|
+
Confira o destino padrão e um possível mapeamento do escopo:
|
|
101
100
|
|
|
102
101
|
```console
|
|
103
|
-
npm config
|
|
102
|
+
npm config get registry
|
|
103
|
+
npm config get @pathbit:registry
|
|
104
104
|
```
|
|
105
105
|
|
|
106
|
-
|
|
107
|
-
|
|
106
|
+
Um valor de `@pathbit:registry` prevalece sobre `npx --registry=...`.
|
|
107
|
+
Se esse mapeamento foi criado apenas para uma instalação antiga, remova
|
|
108
|
+
**somente essa chave** do arquivo que a definiu. No arquivo do usuário:
|
|
109
|
+
|
|
110
|
+
```console
|
|
111
|
+
npm config delete @pathbit:registry --location=user
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Se a chave está no `.npmrc` do projeto ou em variáveis de ambiente, revise
|
|
115
|
+
nesse local; o comando acima não muda essas configurações. Preserve mapeamentos
|
|
116
|
+
exigidos por outras dependências e nunca apague o `.npmrc` inteiro.
|
|
117
|
+
Sem mapeamento do escopo, escolha o registry por execução no
|
|
118
|
+
[guia de instalação](installation.md#instalar).
|
|
119
|
+
|
|
120
|
+
O npm público não exige login para baixar o kit. No GitHub Packages, use
|
|
121
|
+
um token clássico com `read:packages` e o [login específico][github-install].
|
|
122
|
+
Publicar versões exige permissões adicionais; login no GitHub CLI (`gh`)
|
|
123
|
+
não configura automaticamente a autenticação do npm.
|
|
108
124
|
|
|
109
125
|
Confira acesso ao GitHub, ao registro npm e a `nodejs.org`, conforme a etapa.
|
|
110
126
|
Mantenha a verificação de certificados e hashes; resolva proxy, rede ou
|
|
@@ -148,4 +164,4 @@ Use as [issues do projeto][issues] ou volte ao [índice](../README.md).
|
|
|
148
164
|
[runtime]: installation.md#pré-requisitos
|
|
149
165
|
[tools]: ../../.pbai4devs/scripts/preparar-ferramentas/README.md
|
|
150
166
|
[issues]: https://github.com/pathbit/AgentDevKit/issues
|
|
151
|
-
[
|
|
167
|
+
[github-install]: installation.md#github-packages
|
|
@@ -6,7 +6,7 @@ description: Desenvolvimento, contribuição e publicação do AgentDevKit.
|
|
|
6
6
|
|
|
7
7
|
- [Desenvolvimento](development.md)
|
|
8
8
|
- [Manutenção e releases](maintenance.md)
|
|
9
|
-
- [Pacote npm
|
|
9
|
+
- [Pacote no npm e GitHub Packages](packages.md)
|
|
10
10
|
- [Participação na comunidade](community.md)
|
|
11
11
|
|
|
12
12
|
[Voltar à documentação](../README.md)
|
|
@@ -32,6 +32,12 @@ A distribuição real é testada uma vez no perfil completo. Os outros perfis
|
|
|
32
32
|
validam seus riscos específicos. Execuções antigas da mesma referência podem
|
|
33
33
|
ser canceladas quando substituídas, sem cancelar uma publicação em andamento.
|
|
34
34
|
|
|
35
|
+
O workflow [Security tools smoke][security-ci] instala os três scanners com
|
|
36
|
+
pins revisados em Linux, macOS e Windows. Depois analisa fixtures locais sem
|
|
37
|
+
rede, com casos inseguros e corrigidos. Essa prova valida o funcionamento das
|
|
38
|
+
ferramentas; não certifica a segurança de uma aplicação. Relatórios normalizados
|
|
39
|
+
são guardados como artifacts, sem binários ou fontes das fixtures.
|
|
40
|
+
|
|
35
41
|
`npm run verify` executa o perfil completo. `ci:portable` e `ci:smoke`
|
|
36
42
|
executam os demais perfis localmente. `npm run test:examples` verifica os
|
|
37
43
|
cenários em `examples/generated/` quando a mudança afeta a geração.
|
|
@@ -67,9 +73,9 @@ nada. Nunca versione o tarball ou seus relatórios.
|
|
|
67
73
|
O [workflow de release][release] localiza o CI aprovado de um push na branch
|
|
68
74
|
principal, confere o commit e baixa seu artifact por ID. Verifica procedência,
|
|
69
75
|
versão e checksum antes de publicar. Não repete a suíte nem reempacota.
|
|
70
|
-
Também envia o pacote ao [npm público](packages.md),
|
|
71
|
-
integridade
|
|
72
|
-
|
|
76
|
+
Também envia o mesmo pacote ao [npm público e GitHub Packages](packages.md),
|
|
77
|
+
confere a integridade nos dois destinos e testa versão, instalação, diagnóstico
|
|
78
|
+
e sincronização. O consumo pelo npm é anônimo; pelo GitHub, autenticado.
|
|
73
79
|
|
|
74
80
|
Se o artifact expirou, reexecute o CI original do push e depois a release.
|
|
75
81
|
Uma execução manual de CI serve para diagnóstico, mas não substitui essa
|
|
@@ -86,10 +92,14 @@ Para reiniciar uma publicação que falhou, use **Re-run failed jobs** ou
|
|
|
86
92
|
o secret `NPMJS_TOKEN` do repositório; sem ele, usa OIDC, conforme
|
|
87
93
|
[publicação](packages.md).
|
|
88
94
|
|
|
89
|
-
Se a release já existe e falta somente o pacote
|
|
95
|
+
Se a release já existe e falta somente o pacote em um registro, use o modo
|
|
90
96
|
`package_only` descrito em [pacote npm](packages.md#publicar-pelo-actions).
|
|
91
97
|
Ele não tenta recriar a release existente.
|
|
92
98
|
|
|
99
|
+
Execuções concluídas com falha podem ser removidas mediante solicitação,
|
|
100
|
+
sem apagar execuções aprovadas, tags ou releases. Confira a lista e preserve
|
|
101
|
+
os identificadores das execuções e releases mantidas antes da limpeza.
|
|
102
|
+
|
|
93
103
|
## Conferir a entrega pública
|
|
94
104
|
|
|
95
105
|
Confira a versão na [página do pacote][package] e instale pelo nome em um
|
|
@@ -102,3 +112,4 @@ aprovado; uma aprovação de CI não substitui a instalação real pelo registro
|
|
|
102
112
|
[ci]: https://github.com/pathbit/AgentDevKit/actions/workflows/ci.yml
|
|
103
113
|
[release]: https://github.com/pathbit/AgentDevKit/actions/workflows/release.yml
|
|
104
114
|
[package]: https://www.npmjs.com/package/@pathbit/agentdevkit
|
|
115
|
+
[security-ci]: https://github.com/pathbit/AgentDevKit/actions/workflows/security-tools.yml
|
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Publicação sincronizada do AgentDevKit no npm e no GitHub Packages.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# Pacote
|
|
5
|
+
# Pacote nos dois registries
|
|
6
6
|
|
|
7
7
|
O AgentDevKit é um único pacote: [`@pathbit/agentdevkit`][package]. Ele contém
|
|
8
8
|
a CLI e os recursos compartilhados; a instalação prepara os apontamentos dos
|
|
9
9
|
agentes escolhidos no projeto.
|
|
10
10
|
|
|
11
|
+
Cada versão usa o mesmo TGZ nos dois destinos, com o mesmo número e checksum.
|
|
12
|
+
|
|
13
|
+
| Destino | Visibilidade | Instalação |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| [npm público][package] | Pública | `npx`, sem login; opção padrão. |
|
|
16
|
+
| [GitHub Packages][github] | Pública | Exige autenticação do GitHub. |
|
|
17
|
+
|
|
18
|
+
No GitHub Packages, público significa que o pacote é visível a todos;
|
|
19
|
+
o registry npm do GitHub exige token também para baixar pacotes públicos.
|
|
20
|
+
Consulte a [autenticação oficial][github-auth] se escolher esse destino.
|
|
21
|
+
|
|
11
22
|
Os metadados identificam PathBit como autor, palavras-chave do kit e licença
|
|
12
23
|
MIT. O README público é gerado sem frontmatter e com links absolutos do GitHub;
|
|
13
24
|
a fonte versionada conserva o YAML. O `LICENSE` canônico acompanha o pacote e
|
|
@@ -17,13 +28,21 @@ não integram o TGZ do AgentDevKit.
|
|
|
17
28
|
|
|
18
29
|
## Instalar no projeto
|
|
19
30
|
|
|
20
|
-
|
|
31
|
+
Prepare os [pré-requisitos](../guides/prerequisites.md), depois escolha o destino:
|
|
21
32
|
|
|
22
33
|
```console
|
|
23
34
|
npx @pathbit/agentdevkit init
|
|
24
35
|
```
|
|
25
36
|
|
|
26
|
-
|
|
37
|
+
O comando acima usa o npm público, sem login. Para GitHub Packages, faça a
|
|
38
|
+
[autenticação inicial](../guides/installation.md#github-packages) e execute:
|
|
39
|
+
|
|
40
|
+
```console
|
|
41
|
+
npx --registry=https://npm.pkg.github.com @pathbit/agentdevkit init
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Para repetir uma instalação, fixe a versão após o nome, como
|
|
45
|
+
`@pathbit/agentdevkit@0.0.11`, nos dois destinos.
|
|
27
46
|
|
|
28
47
|
Acrescente `--agents codex,claude` para selecionar clientes, `--dry-run` para
|
|
29
48
|
simular ou use `update`, `doctor` e `sync --check` no lugar de `init`.
|
|
@@ -34,12 +53,12 @@ da aplicação. Para conferir as versões:
|
|
|
34
53
|
npm view @pathbit/agentdevkit versions --json
|
|
35
54
|
```
|
|
36
55
|
|
|
37
|
-
Se existir um mapeamento
|
|
38
|
-
[
|
|
56
|
+
Se existir um mapeamento de `@pathbit` que impeça alternar o destino, siga o
|
|
57
|
+
[diagnóstico de registry][fix].
|
|
39
58
|
|
|
40
59
|
## Publicar pelo Actions
|
|
41
60
|
|
|
42
|
-
A publicação usa o mesmo TGZ aprovado pelo CI
|
|
61
|
+
A publicação usa o mesmo TGZ aprovado pelo CI nos dois registries. O workflow
|
|
43
62
|
confere versão, origem e integridade; uma versão existente só é aceita quando
|
|
44
63
|
contém os mesmos bytes. Não reempacote nem substitua uma versão publicada.
|
|
45
64
|
|
|
@@ -48,6 +67,11 @@ variável interna `NPM_TOKEN` somente na publicação. O token precisa permitir
|
|
|
48
67
|
publicar no escopo `@pathbit`; credenciais nunca entram nos arquivos
|
|
49
68
|
versionados.
|
|
50
69
|
|
|
70
|
+
O passo do GitHub Packages usa `GITHUB_TOKEN` com `packages: write` e confirma
|
|
71
|
+
a visibilidade pública. Tokens de um registry não são enviados ao outro.
|
|
72
|
+
O npm continua usando `NPMJS_TOKEN` ou OIDC, com prova de consumo anônimo;
|
|
73
|
+
as provas do GitHub usam autenticação própria.
|
|
74
|
+
|
|
51
75
|
Sem esse secret, o workflow usa OIDC. Configure o **Trusted Publisher** do npm:
|
|
52
76
|
|
|
53
77
|
| Campo | Valor |
|
|
@@ -61,14 +85,19 @@ O fallback recebe `id-token: write`. O npm exige CLI 11.5.1+ e Node 22.14+;
|
|
|
61
85
|
o projeto usa Node 24. Configure a relação de confiança depois que o pacote
|
|
62
86
|
existir; a primeira publicação pode usar o secret `NPMJS_TOKEN`.
|
|
63
87
|
|
|
64
|
-
|
|
88
|
+
Por padrão, uma tag publica nos dois destinos. Para completar o GitHub
|
|
89
|
+
Packages de uma tag existente, preservando a release e o npm:
|
|
65
90
|
|
|
66
91
|
```console
|
|
67
|
-
gh workflow run
|
|
92
|
+
gh workflow run Release -f tag=v0.0.11 -F package_only=true -f registry=github
|
|
68
93
|
```
|
|
69
94
|
|
|
70
95
|
Se o artefato expirou, reexecute o CI original da tag antes da publicação.
|
|
71
|
-
|
|
96
|
+
`registry` aceita `both`, `npm` ou `github`. `package_only` impede alterar a
|
|
97
|
+
release existente; cada registry recusa versões com bytes diferentes e pula
|
|
98
|
+
a publicação se a mesma versão já estiver correta.
|
|
99
|
+
|
|
100
|
+
Depois do envio ao npm, o job usa um ambiente sem credenciais e cache novo para
|
|
72
101
|
executar `--version`, `init`, `doctor` e `sync --check` pelo nome e versão
|
|
73
102
|
publicados. Assim, a verificação comprova o acesso de um usuário comum.
|
|
74
103
|
Confirme também que `latest` aponta para a versão estável e que o tarball é
|
|
@@ -76,12 +105,15 @@ baixável; metadados visíveis sozinhos não comprovam uma instalação funciona
|
|
|
76
105
|
Se o registro ainda não disponibilizar o pacote, aguarde a verificação sem
|
|
77
106
|
republicar automaticamente a mesma versão.
|
|
78
107
|
|
|
79
|
-
|
|
80
|
-
|
|
108
|
+
O GitHub Packages verifica os mesmos comandos com autenticação. Metadados
|
|
109
|
+
devem indicar visibilidade pública e associação ao repositório correto.
|
|
110
|
+
Uma falha parcial permite repetir apenas o destino pendente usando o artefato
|
|
111
|
+
original; nunca recrie uma versão publicada com outro conteúdo.
|
|
81
112
|
|
|
82
113
|
[Wiki](../README.md) · [Manutenção](maintenance.md) ·
|
|
83
114
|
[Instalação](../guides/installation.md)
|
|
84
115
|
|
|
85
116
|
[package]: https://www.npmjs.com/package/@pathbit/agentdevkit
|
|
86
|
-
[
|
|
117
|
+
[github]: https://github.com/pathbit/AgentDevKit/pkgs/npm/agentdevkit
|
|
118
|
+
[github-auth]: https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry
|
|
87
119
|
[fix]: ../guides/troubleshooting.md#download-plataforma-ou-ferramenta-falhando
|