{"_id":"@arises-games/forge-core","_rev":"2-e2b2820a715fbfcef8c1fafc168a8781","name":"@arises-games/forge-core","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"@arises-games/forge-core","version":"0.1.0","keywords":["arises-forge","game-dev","mcp","agents","claude-code"],"author":{"name":"Arises Games Studios"},"license":"UNLICENSED","_id":"@arises-games/forge-core@0.1.0","maintainers":[{"name":"edilsonfjdev","email":"edilson.desenvolved@gmail.com"}],"homepage":"https://github.com/Arises-Games/ecosystem-agents#readme","bugs":{"url":"https://github.com/Arises-Games/ecosystem-agents/issues"},"bin":{"forge-core":"bin/forge-core.js"},"dist":{"shasum":"d170e757a73c633251ec43ffa51c3551df44e824","tarball":"https://registry.npmjs.org/@arises-games/forge-core/-/forge-core-0.1.0.tgz","fileCount":10,"integrity":"sha512-Lzzgr/0giMyCTqHuVXfiC9ILWnwxrvw8ebFtLtLYOXOaUSKvL8tJGci3jWKiTJWw5ONMSBxqMP2lZSW9D0oPZA==","signatures":[{"sig":"MEYCIQCfQNs3vF6FhoMxfyY8vLgy/KYsKMo6eIW0eL/iNMHEdQIhAO3q89xinf+rTKL7T688Q7mTajknCFtqXTmdrsL2VdR8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285438},"main":"lib/server.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"a48844ab6df2c8bea0d9fb3f2702ef24f3aaef4f","scripts":{"test":"node --test","start":"node bin/forge-core.js"},"_npmUser":{"name":"edilsonfjdev","email":"edilson.desenvolved@gmail.com"},"repository":{"url":"git+https://github.com/Arises-Games/ecosystem-agents.git","type":"git","directory":"arises-forge/tools/core-mcp"},"_npmVersion":"11.9.0","description":"MCP server core do Arises Forge — agentes e conhecimento protegidos por licença ed25519 (assinatura assimétrica) + AES-256-GCM.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/forge-core_0.1.0_1780202991380_0.21047667927428027","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@arises-games/forge-core","version":"1.0.0","description":"MCP server core do Arises Forge — agentes e conhecimento protegidos por licença ed25519 (assinatura assimétrica) + AES-256-GCM.","bin":{"forge-core":"bin/forge-core.js"},"type":"commonjs","main":"lib/server.js","scripts":{"test":"node --test","start":"node bin/forge-core.js"},"engines":{"node":">=18"},"keywords":["arises-forge","game-dev","mcp","agents","claude-code"],"author":{"name":"Arises Games Studios"},"license":"UNLICENSED","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","zod":"^3.23.8"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/Arises-Games/ecosystem-agents.git","directory":"arises-forge/tools/core-mcp"},"bugs":{"url":"https://github.com/Arises-Games/ecosystem-agents/issues"},"gitHead":"ac93f6067677418f90b04fd7c157d58f9acb4fd0","_id":"@arises-games/forge-core@1.0.0","homepage":"https://github.com/Arises-Games/ecosystem-agents#readme","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-Ivuf5OJ3D+twTLr4nqMPWU8TB4Y1VlQTDHD88IJpcFejVqV3VCSzoWHbfMwuyHZO7xHy9p1jsbNqIQ4h7Cgvpw==","shasum":"f0df6b416d8e61c6b1dc90bab89945f7b4b4d907","tarball":"https://registry.npmjs.org/@arises-games/forge-core/-/forge-core-1.0.0.tgz","fileCount":9,"unpackedSize":30640,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGfOaxdKMQBGIF0ACLxJxjT3wSaKUWoSGLBBdOVmYUhNAiAInGn0DmQbHWelaubiXkJKpjbkeZ656aoNKZqBhrARlQ=="}]},"_npmUser":{"name":"edilsonfjdev","email":"edilson.desenvolved@gmail.com"},"directories":{},"maintainers":[{"name":"edilsonfjdev","email":"edilson.desenvolved@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/forge-core_1.0.0_1780259587499_0.4751385347248356"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-31T04:49:51.192Z","modified":"2026-05-31T20:33:07.779Z","0.1.0":"2026-05-31T04:49:51.544Z","1.0.0":"2026-05-31T20:33:07.642Z"},"bugs":{"url":"https://github.com/Arises-Games/ecosystem-agents/issues"},"author":{"name":"Arises Games Studios"},"license":"UNLICENSED","homepage":"https://github.com/Arises-Games/ecosystem-agents#readme","keywords":["arises-forge","game-dev","mcp","agents","claude-code"],"repository":{"type":"git","url":"git+https://github.com/Arises-Games/ecosystem-agents.git","directory":"arises-forge/tools/core-mcp"},"description":"MCP server core do Arises Forge — agentes e conhecimento protegidos por licença ed25519 (assinatura assimétrica) + AES-256-GCM.","maintainers":[{"name":"edilsonfjdev","email":"edilson.desenvolved@gmail.com"}],"readme":"# @arises-games/forge-core\n\nMCP server core do **Arises Forge** — entrega agentes, knowledge e templates protegidos por licença.\n\n## Proteção de IP (FORGE-ADR-006)\n\n| Decisão | Implementação |\n|---------|--------------|\n| **D1 — Licença = Assinatura ed25519** | `lib/license.js`: `verify(token, publicKeyPEM)`. Chave **pública** ed25519 embarcada em `keys/forge-public.pem`; assinatura server-side com a privada. Override opcional via `FORGE_PUBLIC_KEY`. **Sem bypass por prefixo.** |\n| **D2 — AES-256-GCM independente da licença** | `lib/crypto.js`: chave `FORGE_MASTER_KEY` não derivada da licença. `core.enc` publicado sozinho é inútil. |\n| **D3 — Entrega da chave via ativação online** | `FORGE_DECRYPT_KEY` entregue por `forge activate <TOKEN>`. Cacheada em `~/.forge/activation.json` com TTL; grace period offline. |\n| **D5 — Salt por build** | `encrypt()` gera `randomBytes(32)` por chamada; incorporado no envelope. |\n\n## Pré-requisitos\n\n```bash\ncd tools/core-mcp\nnpm install   # instala @modelcontextprotocol/sdk\n```\n\n> O server **não roda sem `npm install`** — `@modelcontextprotocol/sdk` é dependência obrigatória.\n\n## Variáveis de ambiente\n\n| Variável | Descrição | Requerida |\n|---------|-----------|-----------|\n| `FORGE_DECRYPT_KEY` | Chave de decifragem do `core.enc` (entregue via `forge activate <TOKEN>`) | Para uso real |\n| `FORGE_MASTER_KEY` | Chave mestra (dev-mode, **somente owner/Arises Games**) | Dev-mode |\n| `FORGE_PUBLIC_KEY` | Caminho alternativo para a chave pública ed25519 (override de `keys/forge-public.pem`) | Opcional |\n| `FORGE_CORE_ENC` | Caminho alternativo para `core.enc` | Opcional |\n\n## Uso\n\n```bash\n# Ativação (TOKEN = string assinada emitida por generate-license.js)\nforge activate <TOKEN>\n\n# Execução\nFORGE_DECRYPT_KEY=<key> forge-core\n\n# Dev-mode (owner)\nFORGE_MASTER_KEY=<masterKey> forge-core\n```\n\n## Configuração MCP (claude_desktop_config.json)\n\n```json\n{\n  \"mcpServers\": {\n    \"forge-core\": {\n      \"command\": \"forge-core\",\n      \"env\": {\n        \"FORGE_DECRYPT_KEY\": \"<chave-entregue-pelo-activate>\"\n      }\n    }\n  }\n}\n```\n\n## Tools MCP\n\n| Tool | Descrição |\n|------|-----------|\n| `list_agents` | Lista todos os agentes disponíveis |\n| `get_agent` | Retorna persona completa por nome |\n| `get_knowledge` | Retorna entrada de knowledge por id |\n| `get_template` | Retorna template por nome |\n| `validate_license` | Valida token de licença (assinatura ed25519) |\n\n## Testes\n\n```bash\ncd tools/core-mcp\nnode --test\n```\n\nTestes zero-dep (`node:test`): round-trip AES, verificação ed25519, rejeição de token adulterado e token sem assinatura válida (anti-forja assimétrica).\n\n## Segurança\n\n- `lib/license.js` e `lib/crypto.js` são **zero-dep** (`node:crypto` nativo).\n- Licença validada por assinatura **ed25519 assimétrica**: a chave privada nunca sai do servidor Arises Games; a chave pública embarcada em `keys/forge-public.pem` só verifica.\n- `core.enc` sem `FORGE_DECRYPT_KEY` ou `FORGE_MASTER_KEY` → conteúdo inacessível.\n- Sem caminho de bypass por prefixo de licença.\n\n---\n\n*Arises Games Studios — Arises Forge v1.0.0*\n","readmeFilename":"README.md"}