mega-brain-ai 1.3.0
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/.antigravity/README.md +46 -0
- package/.antigravity/rules/.gitkeep +0 -0
- package/.antigravity/rules/mega-brain.md +39 -0
- package/.claude/CLAUDE.md +172 -0
- package/.claude/agents.yaml +44 -0
- package/.claude/commands/agents.md +161 -0
- package/.claude/commands/ask.md +117 -0
- package/.claude/commands/benchmark.md +224 -0
- package/.claude/commands/chat.md +343 -0
- package/.claude/commands/compare.md +116 -0
- package/.claude/commands/conclave.md +196 -0
- package/.claude/commands/config.md +133 -0
- package/.claude/commands/create-agent.md +467 -0
- package/.claude/commands/debate.md +159 -0
- package/.claude/commands/documentation/create-architecture-documentation.md +175 -0
- package/.claude/commands/dossiers.md +180 -0
- package/.claude/commands/evolve.md +223 -0
- package/.claude/commands/extract-dna.md +172 -0
- package/.claude/commands/extract-knowledge.md +507 -0
- package/.claude/commands/gsd/add-phase.md +43 -0
- package/.claude/commands/gsd/add-tests.md +41 -0
- package/.claude/commands/gsd/add-todo.md +47 -0
- package/.claude/commands/gsd/audit-milestone.md +36 -0
- package/.claude/commands/gsd/check-todos.md +45 -0
- package/.claude/commands/gsd/cleanup.md +18 -0
- package/.claude/commands/gsd/complete-milestone.md +136 -0
- package/.claude/commands/gsd/debug.md +167 -0
- package/.claude/commands/gsd/discuss-phase.md +83 -0
- package/.claude/commands/gsd/execute-phase.md +41 -0
- package/.claude/commands/gsd/health.md +22 -0
- package/.claude/commands/gsd/help.md +22 -0
- package/.claude/commands/gsd/insert-phase.md +32 -0
- package/.claude/commands/gsd/join-discord.md +18 -0
- package/.claude/commands/gsd/list-phase-assumptions.md +46 -0
- package/.claude/commands/gsd/map-codebase.md +71 -0
- package/.claude/commands/gsd/new-milestone.md +44 -0
- package/.claude/commands/gsd/new-project.md +42 -0
- package/.claude/commands/gsd/pause-work.md +38 -0
- package/.claude/commands/gsd/plan-milestone-gaps.md +34 -0
- package/.claude/commands/gsd/plan-phase.md +45 -0
- package/.claude/commands/gsd/progress.md +24 -0
- package/.claude/commands/gsd/quick.md +41 -0
- package/.claude/commands/gsd/reapply-patches.md +110 -0
- package/.claude/commands/gsd/remove-phase.md +31 -0
- package/.claude/commands/gsd/research-phase.md +189 -0
- package/.claude/commands/gsd/resume-work.md +40 -0
- package/.claude/commands/gsd/set-profile.md +34 -0
- package/.claude/commands/gsd/settings.md +36 -0
- package/.claude/commands/gsd/update.md +37 -0
- package/.claude/commands/gsd/verify-work.md +38 -0
- package/.claude/commands/inbox.md +296 -0
- package/.claude/commands/ingest-empresa.md +191 -0
- package/.claude/commands/ingest.md +183 -0
- package/.claude/commands/jarvis-briefing.md +67 -0
- package/.claude/commands/jarvis-control.md +169 -0
- package/.claude/commands/jarvis-full.md +182 -0
- package/.claude/commands/jarvis.md +212 -0
- package/.claude/commands/ler-drive.md +212 -0
- package/.claude/commands/log.md +158 -0
- package/.claude/commands/loop.md +133 -0
- package/.claude/commands/loops.md +73 -0
- package/.claude/commands/mission-autopilot.md +538 -0
- package/.claude/commands/mission.md +353 -0
- package/.claude/commands/process-inbox.md +148 -0
- package/.claude/commands/process-jarvis.md +3036 -0
- package/.claude/commands/process-video.md +131 -0
- package/.claude/commands/rag-search.md +78 -0
- package/.claude/commands/resume.md +33 -0
- package/.claude/commands/save.md +38 -0
- package/.claude/commands/scan-inbox.md +125 -0
- package/.claude/commands/setup.md +99 -0
- package/.claude/commands/system-digest.md +243 -0
- package/.claude/commands/verify.md +182 -0
- package/.claude/commands/view-dna.md +169 -0
- package/.claude/get-shit-done/VERSION +1 -0
- package/.claude/get-shit-done/bin/gsd-tools.cjs +588 -0
- package/.claude/get-shit-done/bin/lib/commands.cjs +553 -0
- package/.claude/get-shit-done/bin/lib/config.cjs +162 -0
- package/.claude/get-shit-done/bin/lib/core.cjs +411 -0
- package/.claude/get-shit-done/bin/lib/frontmatter.cjs +299 -0
- package/.claude/get-shit-done/bin/lib/init.cjs +710 -0
- package/.claude/get-shit-done/bin/lib/milestone.cjs +216 -0
- package/.claude/get-shit-done/bin/lib/phase.cjs +871 -0
- package/.claude/get-shit-done/bin/lib/roadmap.cjs +298 -0
- package/.claude/get-shit-done/bin/lib/state.cjs +679 -0
- package/.claude/get-shit-done/bin/lib/template.cjs +222 -0
- package/.claude/get-shit-done/bin/lib/verify.cjs +773 -0
- package/.claude/get-shit-done/references/checkpoints.md +776 -0
- package/.claude/get-shit-done/references/continuation-format.md +249 -0
- package/.claude/get-shit-done/references/decimal-phase-calculation.md +65 -0
- package/.claude/get-shit-done/references/git-integration.md +248 -0
- package/.claude/get-shit-done/references/git-planning-commit.md +38 -0
- package/.claude/get-shit-done/references/model-profile-resolution.md +34 -0
- package/.claude/get-shit-done/references/model-profiles.md +92 -0
- package/.claude/get-shit-done/references/phase-argument-parsing.md +61 -0
- package/.claude/get-shit-done/references/planning-config.md +196 -0
- package/.claude/get-shit-done/references/questioning.md +145 -0
- package/.claude/get-shit-done/references/tdd.md +263 -0
- package/.claude/get-shit-done/references/ui-brand.md +160 -0
- package/.claude/get-shit-done/references/verification-patterns.md +612 -0
- package/.claude/get-shit-done/templates/DEBUG.md +164 -0
- package/.claude/get-shit-done/templates/UAT.md +247 -0
- package/.claude/get-shit-done/templates/VALIDATION.md +76 -0
- package/.claude/get-shit-done/templates/codebase/architecture.md +255 -0
- package/.claude/get-shit-done/templates/codebase/concerns.md +310 -0
- package/.claude/get-shit-done/templates/codebase/conventions.md +307 -0
- package/.claude/get-shit-done/templates/codebase/integrations.md +280 -0
- package/.claude/get-shit-done/templates/codebase/stack.md +186 -0
- package/.claude/get-shit-done/templates/codebase/structure.md +285 -0
- package/.claude/get-shit-done/templates/codebase/testing.md +480 -0
- package/.claude/get-shit-done/templates/config.json +37 -0
- package/.claude/get-shit-done/templates/context.md +283 -0
- package/.claude/get-shit-done/templates/continue-here.md +78 -0
- package/.claude/get-shit-done/templates/debug-subagent-prompt.md +91 -0
- package/.claude/get-shit-done/templates/discovery.md +146 -0
- package/.claude/get-shit-done/templates/milestone-archive.md +123 -0
- package/.claude/get-shit-done/templates/milestone.md +115 -0
- package/.claude/get-shit-done/templates/phase-prompt.md +569 -0
- package/.claude/get-shit-done/templates/planner-subagent-prompt.md +117 -0
- package/.claude/get-shit-done/templates/project.md +184 -0
- package/.claude/get-shit-done/templates/requirements.md +231 -0
- package/.claude/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
- package/.claude/get-shit-done/templates/research-project/FEATURES.md +147 -0
- package/.claude/get-shit-done/templates/research-project/PITFALLS.md +200 -0
- package/.claude/get-shit-done/templates/research-project/STACK.md +120 -0
- package/.claude/get-shit-done/templates/research-project/SUMMARY.md +170 -0
- package/.claude/get-shit-done/templates/research.md +552 -0
- package/.claude/get-shit-done/templates/retrospective.md +54 -0
- package/.claude/get-shit-done/templates/roadmap.md +202 -0
- package/.claude/get-shit-done/templates/state.md +176 -0
- package/.claude/get-shit-done/templates/summary-complex.md +59 -0
- package/.claude/get-shit-done/templates/summary-minimal.md +41 -0
- package/.claude/get-shit-done/templates/summary-standard.md +48 -0
- package/.claude/get-shit-done/templates/summary.md +248 -0
- package/.claude/get-shit-done/templates/user-setup.md +311 -0
- package/.claude/get-shit-done/templates/verification-report.md +322 -0
- package/.claude/get-shit-done/workflows/add-phase.md +111 -0
- package/.claude/get-shit-done/workflows/add-tests.md +350 -0
- package/.claude/get-shit-done/workflows/add-todo.md +157 -0
- package/.claude/get-shit-done/workflows/audit-milestone.md +297 -0
- package/.claude/get-shit-done/workflows/check-todos.md +176 -0
- package/.claude/get-shit-done/workflows/cleanup.md +152 -0
- package/.claude/get-shit-done/workflows/complete-milestone.md +763 -0
- package/.claude/get-shit-done/workflows/diagnose-issues.md +219 -0
- package/.claude/get-shit-done/workflows/discovery-phase.md +289 -0
- package/.claude/get-shit-done/workflows/discuss-phase.md +542 -0
- package/.claude/get-shit-done/workflows/execute-phase.md +449 -0
- package/.claude/get-shit-done/workflows/execute-plan.md +448 -0
- package/.claude/get-shit-done/workflows/health.md +156 -0
- package/.claude/get-shit-done/workflows/help.md +489 -0
- package/.claude/get-shit-done/workflows/insert-phase.md +129 -0
- package/.claude/get-shit-done/workflows/list-phase-assumptions.md +178 -0
- package/.claude/get-shit-done/workflows/map-codebase.md +315 -0
- package/.claude/get-shit-done/workflows/new-milestone.md +382 -0
- package/.claude/get-shit-done/workflows/new-project.md +1116 -0
- package/.claude/get-shit-done/workflows/pause-work.md +122 -0
- package/.claude/get-shit-done/workflows/plan-milestone-gaps.md +274 -0
- package/.claude/get-shit-done/workflows/plan-phase.md +569 -0
- package/.claude/get-shit-done/workflows/progress.md +381 -0
- package/.claude/get-shit-done/workflows/quick.md +453 -0
- package/.claude/get-shit-done/workflows/remove-phase.md +154 -0
- package/.claude/get-shit-done/workflows/research-phase.md +73 -0
- package/.claude/get-shit-done/workflows/resume-project.md +306 -0
- package/.claude/get-shit-done/workflows/set-profile.md +80 -0
- package/.claude/get-shit-done/workflows/settings.md +213 -0
- package/.claude/get-shit-done/workflows/transition.md +544 -0
- package/.claude/get-shit-done/workflows/update.md +219 -0
- package/.claude/get-shit-done/workflows/verify-phase.md +242 -0
- package/.claude/get-shit-done/workflows/verify-work.md +569 -0
- package/.claude/gsd-file-manifest.json +144 -0
- package/.claude/hooks/agent_creation_trigger.py +168 -0
- package/.claude/hooks/agent_index_updater.py +255 -0
- package/.claude/hooks/agent_memory_persister.py +203 -0
- package/.claude/hooks/claude_md_agent_sync.py +162 -0
- package/.claude/hooks/claude_md_guard.py +154 -0
- package/.claude/hooks/continuous_save.py +414 -0
- package/.claude/hooks/creation_validator.py +360 -0
- package/.claude/hooks/enforce_dual_location.py +501 -0
- package/.claude/hooks/enforce_plan_mode.py +220 -0
- package/.claude/hooks/gsd-check-update.js +62 -0
- package/.claude/hooks/gsd-context-monitor.js +122 -0
- package/.claude/hooks/gsd-statusline.js +108 -0
- package/.claude/hooks/inbox_age_alert.py +367 -0
- package/.claude/hooks/ledger_updater.py +303 -0
- package/.claude/hooks/memory_hints_injector.py +251 -0
- package/.claude/hooks/memory_updater.py +202 -0
- package/.claude/hooks/notification_system.py +115 -0
- package/.claude/hooks/pending_tracker.py +188 -0
- package/.claude/hooks/pipeline_checkpoint.py +583 -0
- package/.claude/hooks/post_batch_cascading.py +1740 -0
- package/.claude/hooks/post_tool_use.py +120 -0
- package/.claude/hooks/quality_watchdog.py +394 -0
- package/.claude/hooks/ralph_wiggum.py +286 -0
- package/.claude/hooks/session-source-sync.py +223 -0
- package/.claude/hooks/session_autosave_v2.py +1135 -0
- package/.claude/hooks/session_end.py +203 -0
- package/.claude/hooks/session_start.py +939 -0
- package/.claude/hooks/skill_indexer.py +48 -0
- package/.claude/hooks/skill_router.py +358 -0
- package/.claude/hooks/stop_hook_completeness.py +187 -0
- package/.claude/hooks/user_prompt_submit.py +125 -0
- package/.claude/package.json +1 -0
- package/.claude/rules/ANTHROPIC-STANDARDS.md +384 -0
- package/.claude/rules/CLAUDE-LITE.md +201 -0
- package/.claude/rules/RULE-GROUP-1.md +320 -0
- package/.claude/rules/RULE-GROUP-2.md +307 -0
- package/.claude/rules/RULE-GROUP-3.md +248 -0
- package/.claude/rules/RULE-GROUP-4.md +427 -0
- package/.claude/rules/RULE-GROUP-5.md +388 -0
- package/.claude/rules/RULE-GROUP-6.md +387 -0
- package/.claude/rules/RULE-GSD-MANDATORY.md +106 -0
- package/.claude/rules/agent-cognition.md +779 -0
- package/.claude/rules/agent-integrity.md +692 -0
- package/.claude/rules/epistemic-standards.md +333 -0
- package/.claude/rules/logging.md +53 -0
- package/.claude/rules/mcp-governance.md +128 -0
- package/.claude/rules/pipeline.md +60 -0
- package/.claude/rules/state-management.md +93 -0
- package/.claude/scripts/apply-tags.py +77 -0
- package/.claude/scripts/batch-extract-transcriptions.py +132 -0
- package/.claude/scripts/build-complete-index.py +250 -0
- package/.claude/scripts/build-planilha-index.py +170 -0
- package/.claude/scripts/complete-tag-matching.py +250 -0
- package/.claude/scripts/deduplicate-inbox.py +139 -0
- package/.claude/scripts/docx-xml-extractor.py +141 -0
- package/.claude/scripts/extract-docx-text.py +58 -0
- package/.claude/scripts/extract-single-transcription.py +74 -0
- package/.claude/scripts/extract_docx_from_gdrive.py +77 -0
- package/.claude/scripts/jarvis_orchestrator.py +5 -0
- package/.claude/scripts/organized-downloader.py +246 -0
- package/.claude/scripts/planilha-tagger.py +187 -0
- package/.claude/scripts/revert-tags.py +70 -0
- package/.claude/scripts/source-sync.py +265 -0
- package/.claude/scripts/tag-inbox-files.py +276 -0
- package/.claude/scripts/tag-inbox-v2.py +253 -0
- package/.claude/scripts/test-extraction.py +35 -0
- package/.claude/scripts/test-full-extraction.py +74 -0
- package/.claude/scripts/validate_cascading_integrity.py +409 -0
- package/.claude/settings.json +215 -0
- package/.claude/skills/DETECTION-PROTOCOL.md +217 -0
- package/.claude/skills/README.md +240 -0
- package/.claude/skills/SKILL-REGISTRY.md +283 -0
- package/.claude/skills/SKILL-SUGGESTIONS.md +114 -0
- package/.claude/skills/_TEMPLATES/SKILL-WRITER-GUIDE.md +385 -0
- package/.claude/skills/agent-creation/SKILL.md +374 -0
- package/.claude/skills/ask-company/SKILL.md +198 -0
- package/.claude/skills/brainstorming/SKILL.md +72 -0
- package/.claude/skills/chronicler/SKILL.md +146 -0
- package/.claude/skills/chronicler/chronicler_core.py +468 -0
- package/.claude/skills/code-review/SKILL.md +160 -0
- package/.claude/skills/convert-to-company-docs/SKILL.md +68 -0
- package/.claude/skills/convert-to-company-docs/convert.py +532 -0
- package/.claude/skills/dispatching-parallel-agents/SKILL.md +193 -0
- package/.claude/skills/docs-megabrain/SKILL.md +251 -0
- package/.claude/skills/executing-plans/SKILL.md +114 -0
- package/.claude/skills/executor/SKILL.md +161 -0
- package/.claude/skills/fase-2-5-tagging/SKILL.md +182 -0
- package/.claude/skills/feature-dev/SKILL.md +154 -0
- package/.claude/skills/frontend-design/SKILL.md +165 -0
- package/.claude/skills/gdrive-transcription-downloader/SKILL.md +249 -0
- package/.claude/skills/gemini-fallback/SKILL.md +67 -0
- package/.claude/skills/gemini-fallback/gemini_fetch.py +0 -0
- package/.claude/skills/gha/SKILL.md +96 -0
- package/.claude/skills/gha/gha_diagnostic.py +227 -0
- package/.claude/skills/github-workflow/SKILL.md +190 -0
- package/.claude/skills/hookify/SKILL.md +134 -0
- package/.claude/skills/hybrid-source-reading/SKILL.md +265 -0
- package/.claude/skills/jarvis/SKILL.md +546 -0
- package/.claude/skills/jarvis-briefing/SKILL.md +340 -0
- package/.claude/skills/knowledge-extraction/SKILL.md +318 -0
- package/.claude/skills/ler-planilha/SKILL.md +281 -0
- package/.claude/skills/pipeline-jarvis/SKILL.md +430 -0
- package/.claude/skills/plugin-dev/SKILL.md +176 -0
- package/.claude/skills/pr-review-toolkit/SKILL.md +178 -0
- package/.claude/skills/process-company-inbox/SKILL.md +183 -0
- package/.claude/skills/python-megabrain/SKILL.md +323 -0
- package/.claude/skills/resume/SKILL.md +61 -0
- package/.claude/skills/save/SKILL.md +87 -0
- package/.claude/skills/skill-creator-internal/SKILL.md +186 -0
- package/.claude/skills/skill-writer/SKILL.md +153 -0
- package/.claude/skills/skill-writer/examples.md +191 -0
- package/.claude/skills/skill-writer/troubleshooting.md +205 -0
- package/.claude/skills/smart-download-tagger/SKILL.md +148 -0
- package/.claude/skills/source-sync/SKILL.md +240 -0
- package/.claude/skills/sync-docs/SKILL.md +193 -0
- package/.claude/skills/sync-docs/config.json +37 -0
- package/.claude/skills/sync-docs/gdrive_sync.py +358 -0
- package/.claude/skills/sync-docs/reauth.py +71 -0
- package/.claude/skills/using-superpowers/SKILL.md +105 -0
- package/.claude/skills/verification-before-completion/SKILL.md +130 -0
- package/.claude/skills/verify/SKILL.md +154 -0
- package/.claude/skills/verify/verify_runner.py +0 -0
- package/.claude/skills/verify-6-levels/SKILL.md +234 -0
- package/.claude/skills/writing-plans/SKILL.md +184 -0
- package/.claude/templates/BATCH-LOG-TEMPLATE.md +221 -0
- package/.claudeignore +9 -0
- package/.cursor/agents.yaml +44 -0
- package/.cursor/rules/mega-brain.md +39 -0
- package/.gitattributes +19 -0
- package/.github/CODEOWNERS +8 -0
- package/.github/ISSUE_TEMPLATE/agent.md +96 -0
- package/.github/ISSUE_TEMPLATE/bug.md +67 -0
- package/.github/ISSUE_TEMPLATE/feature.md +56 -0
- package/.github/ISSUE_TEMPLATE/pipeline.md +70 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +30 -0
- package/.github/assets/banner.svg +152 -0
- package/.github/assets/logo-dark.svg +79 -0
- package/.github/assets/social-preview.png +0 -0
- package/.github/layer1-allowlist.txt +196 -0
- package/.github/layer2-manifest.txt +42 -0
- package/.github/layer3-manifest.txt +94 -0
- package/.github/workflows/claude-code-pr.yml +198 -0
- package/.github/workflows/claude-code-review.yml +57 -0
- package/.github/workflows/claude.yml +76 -0
- package/.github/workflows/publish-pro.yml +72 -0
- package/.github/workflows/publish.yml +86 -0
- package/.github/workflows/verification.yml +251 -0
- package/.gitignore +244 -0
- package/.gitleaks.toml +118 -0
- package/.windsurf/agents.yaml +44 -0
- package/.windsurf/rules/mega-brain.md +39 -0
- package/CONTRIBUTING.md +62 -0
- package/QUICK-START.md +231 -0
- package/README.md +168 -0
- package/agents/AGENT-INDEX.yaml +107 -0
- package/agents/MASTER-AGENT.md +612 -0
- package/agents/README.md +48 -0
- package/agents/_templates/INDEX.md +741 -0
- package/agents/_templates/TEMPLATE-AGENT-MD-ULTRA-ROBUSTO-V3.md +2399 -0
- package/agents/boardroom/CHECKLIST-MASTER.md +281 -0
- package/agents/boardroom/INTEGRATION-GUIDE.md +406 -0
- package/agents/boardroom/README.md +238 -0
- package/agents/boardroom/config/BOARDROOM-CONFIG.md +186 -0
- package/agents/boardroom/config/TTS-INTEGRATION.md +258 -0
- package/agents/boardroom/config/VOICE-PROFILES.md +624 -0
- package/agents/boardroom/scripts/audio_generator.py +375 -0
- package/agents/boardroom/scripts/audio_generator_edge.py +353 -0
- package/agents/boardroom/scripts/jarvis_boardroom_hook.py +415 -0
- package/agents/boardroom/scripts/notebooklm_generator.py +578 -0
- package/agents/boardroom/templates/EPISODE-TEMPLATE.md +367 -0
- package/agents/boardroom/templates/scene-templates/SCENE-AGENT-DEBATE.md +252 -0
- package/agents/boardroom/templates/scene-templates/SCENE-COUNCIL.md +270 -0
- package/agents/boardroom/templates/scene-templates/SCENE-DNA-CONSULTATION.md +126 -0
- package/agents/boardroom/templates/scene-templates/SCENE-QUESTION.md +174 -0
- package/agents/boardroom/workflows/WORKFLOW-AUDIO-GENERATION.md +421 -0
- package/agents/conclave/CRITIC.md +197 -0
- package/agents/conclave/DEVILS-ADVOCATE.md +274 -0
- package/agents/conclave/README.md +35 -0
- package/agents/conclave/SYNTHESIZER.md +293 -0
- package/agents/conclave/advogado-do-diabo/AGENT.md +502 -0
- package/agents/conclave/advogado-do-diabo/SOUL.md +100 -0
- package/agents/conclave/critico-metodologico/AGENT.md +683 -0
- package/agents/conclave/critico-metodologico/SOUL.md +107 -0
- package/agents/conclave/sintetizador/AGENT.md +571 -0
- package/agents/conclave/sintetizador/SOUL.md +94 -0
- package/agents/constitution/BASE-CONSTITUTION.md +254 -0
- package/agents/persona-registry.yaml +300 -0
- package/agents/sua-empresa/.gitkeep +0 -0
- package/agents/sua-empresa/README.md +44 -0
- package/agents/sua-empresa/_example/jds/EXAMPLE-JD.md +42 -0
- package/agents/sua-empresa/_example/org/EXAMPLE-ORG.md +32 -0
- package/agents/sua-empresa/_example/roles/EXAMPLE-ROLE.md +38 -0
- package/artifacts/README.md +11 -0
- package/artifacts/canonical/.gitkeep +0 -0
- package/artifacts/chunks/.gitkeep +0 -0
- package/artifacts/insights/.gitkeep +0 -0
- package/artifacts/narratives/.gitkeep +0 -0
- package/bin/cli.js +2 -0
- package/bin/lib/ascii-art.js +202 -0
- package/bin/lib/feature-gate.js +46 -0
- package/bin/lib/installer.js +593 -0
- package/bin/lib/license.js +59 -0
- package/bin/lib/pro-commands.js +75 -0
- package/bin/lib/setup-wizard.js +547 -0
- package/bin/lib/validate-email.js +113 -0
- package/bin/mega-brain.js +136 -0
- package/bin/pre-publish-gate.js +229 -0
- package/bin/push.js +1056 -0
- package/bin/templates/env.example +27 -0
- package/bin/utils/pro-detector.js +50 -0
- package/bin/validate-package.js +190 -0
- package/core/__init__.py +2 -0
- package/core/glossary/INDEX.md +63 -0
- package/core/glossary/digital.md +243 -0
- package/core/glossary/finance.md +49 -0
- package/core/glossary/marketing.md +69 -0
- package/core/glossary/operations.md +50 -0
- package/core/glossary/sales.md +690 -0
- package/core/intelligence/__init__.py +41 -0
- package/core/intelligence/agent_trigger.py +468 -0
- package/core/intelligence/audit_layers.py +491 -0
- package/core/intelligence/autonomous_processor.py +796 -0
- package/core/intelligence/bootstrap_registry.py +550 -0
- package/core/intelligence/business_model_detector.py +476 -0
- package/core/intelligence/dossier_trigger.py +336 -0
- package/core/intelligence/entity_normalizer.py +565 -0
- package/core/intelligence/org_chain_detector.py +411 -0
- package/core/intelligence/review_dashboard.py +338 -0
- package/core/intelligence/role_detector.py +855 -0
- package/core/intelligence/session_autosave.py +46 -0
- package/core/intelligence/skill_generator.py +601 -0
- package/core/intelligence/sow_generator.py +711 -0
- package/core/intelligence/sync_package_files.py +504 -0
- package/core/intelligence/task_orchestrator.py +780 -0
- package/core/intelligence/theme_analyzer.py +562 -0
- package/core/intelligence/tool_discovery.py +432 -0
- package/core/intelligence/validate_json_integrity.py +106 -0
- package/core/intelligence/validate_layers.py +310 -0
- package/core/intelligence/verify_classifications.py +94 -0
- package/core/intelligence/viability_scorer.py +592 -0
- package/core/jarvis/02-JARVIS-SOUL.md +390 -0
- package/core/jarvis/03-JARVIS-DNA.yaml +312 -0
- package/core/jarvis/AGENT.md +191 -0
- package/core/jarvis/agent-creator/AGENT.md +199 -0
- package/core/jarvis/agent-creator/SOUL.md +82 -0
- package/core/jarvis/agent-creator/tasks/create-agent.md +133 -0
- package/core/jarvis/agent-creator/tasks/sync-agents.md +100 -0
- package/core/jarvis/agent-creator/workflows/wf-create-agent.yaml +110 -0
- package/core/jarvis/agent-creator/workflows/wf-pipeline-trigger.yaml +111 -0
- package/core/jarvis/autonomous/benchmark/AGENT.md +347 -0
- package/core/jarvis/autonomous/benchmark/SOUL.md +78 -0
- package/core/jarvis/autonomous/critic/AGENT.md +324 -0
- package/core/jarvis/autonomous/critic/SOUL.md +78 -0
- package/core/jarvis/autonomous/evolver/AGENT.md +294 -0
- package/core/jarvis/autonomous/evolver/SOUL.md +85 -0
- package/core/jarvis/autonomous/playbook-generator/AGENT.md +399 -0
- package/core/jarvis/autonomous/playbook-generator/SOUL.md +80 -0
- package/core/patterns/_ROLE_PATTERNS.yaml +547 -0
- package/core/patterns/quality_gates.yaml +259 -0
- package/core/patterns/trigger_config.yaml +193 -0
- package/core/schemas/SCHEMA-INDEX.md +94 -0
- package/core/schemas/canonical-map.schema.json +98 -0
- package/core/schemas/chunks-state.schema.json +131 -0
- package/core/schemas/decisions-registry.schema.json +120 -0
- package/core/schemas/file-registry.schema.json +69 -0
- package/core/schemas/insights-state.schema.json +111 -0
- package/core/schemas/narratives-state.schema.json +150 -0
- package/core/tasks/CHANGELOG.md +55 -0
- package/core/tasks/TASK-REGISTRY.md +113 -0
- package/core/tasks/_templates/task-tmpl.md +105 -0
- package/core/tasks/analyze-themes.md +84 -0
- package/core/tasks/detect-role.md +82 -0
- package/core/tasks/extract-dna.md +114 -0
- package/core/tasks/normalize-entities.md +82 -0
- package/core/tasks/process-batch.md +111 -0
- package/core/tasks/validate-cascade.md +105 -0
- package/core/templates/README.md +27 -0
- package/core/templates/agents/dna-config-template.yaml +181 -0
- package/core/templates/agents/enrichment-protocol.md +408 -0
- package/core/templates/agents/memory-template.md +567 -0
- package/core/templates/agents/reasoning-model.md +331 -0
- package/core/templates/agents/soul-template.md +416 -0
- package/core/templates/agents/template-evolution.md +544 -0
- package/core/templates/debates/CONCLAVE-LOG-TEMPLATE-v2.md +309 -0
- package/core/templates/debates/conclave-log-template.md +309 -0
- package/core/templates/debates/conclave-protocol.md +518 -0
- package/core/templates/debates/debate-dynamics-config.yaml +322 -0
- package/core/templates/debates/debate-dynamics.md +613 -0
- package/core/templates/debates/debate-protocol.md +323 -0
- package/core/templates/logs/LOG-TEMPLATES.md +1068 -0
- package/core/templates/logs/batch-visual-template.md +841 -0
- package/core/templates/logs/log-structure.md +65 -0
- package/core/templates/logs/visual-diff.md +159 -0
- package/core/templates/phases/dossier-compilation.md +790 -0
- package/core/templates/phases/narrative-metabolism.md +292 -0
- package/core/templates/phases/narrative-synthesis.md +278 -0
- package/core/templates/phases/phase4-checkpoint.md +146 -0
- package/core/templates/phases/prompt-1.1-chunking.md +154 -0
- package/core/templates/phases/prompt-1.2-entity-resolution.md +186 -0
- package/core/templates/phases/prompt-2.1-dna-tags.md +208 -0
- package/core/templates/phases/prompt-2.1-insight-extraction.md +191 -0
- package/core/templates/phases/prompt-3.1-narrative.md +331 -0
- package/core/templates/phases/sources-compilation.md +340 -0
- package/core/workflows/PIPELINE-JARVIS-DOCS.md +606 -0
- package/core/workflows/wf-conclave.yaml +139 -0
- package/core/workflows/wf-extract-dna.yaml +158 -0
- package/core/workflows/wf-ingest.yaml +88 -0
- package/core/workflows/wf-pipeline-full.yaml +138 -0
- package/docs/API-KEYS-GUIDE.md +372 -0
- package/docs/INTEGRATION-POINTS.md +501 -0
- package/docs/LAYERS.md +403 -0
- package/docs/PLAN-MODE-PROTOCOL.md +388 -0
- package/docs/RESTORE-AND-INDEX.md +203 -0
- package/docs/TAG-RESOLVER-IMPLEMENTATION.md +597 -0
- package/docs/conselho.md +337 -0
- package/docs/context7-readme.md +28 -0
- package/docs/jarvis-logging-protocol.md +380 -0
- package/docs/pipeline-completa-v4.md +1315 -0
- package/docs/prompts/meta_agente_mapeamento_processos.md +297 -0
- package/docs/quick-start.md +197 -0
- package/docs/readme-ralph-cascateamento.md +207 -0
- package/docs/template-master.md +727 -0
- package/docs/templates/phase5/IMPLEMENTATION-GUIDE.md +355 -0
- package/docs/templates/phase5/MOGA-BRAIN-PHASE5-TEMPLATES.md +1284 -0
- package/docs/templates/phase5/README.md +165 -0
- package/docs/workflow-continuous-claude.md +2232 -0
- package/inbox/.gitkeep +0 -0
- package/inbox/README.md +15 -0
- package/knowledge/NAVIGATION-MAP.json +292 -0
- package/knowledge/README.md +11 -0
- package/knowledge/dna/.gitkeep +0 -0
- package/knowledge/dossiers/persons/.gitkeep +0 -0
- package/knowledge/dossiers/system/.gitkeep +0 -0
- package/knowledge/dossiers/themes/.gitkeep +0 -0
- package/knowledge/playbooks/.gitkeep +0 -0
- package/knowledge/sources/.gitkeep +0 -0
- package/logs/.gitkeep +0 -0
- package/logs/README.md +11 -0
- package/package.json +180 -0
- package/requirements.txt +4 -0
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# PR Review Toolkit Skill
|
|
2
|
+
|
|
3
|
+
> **Auto-Trigger:** Quando usuário pedir análise de PR, revisão de pull request, análise de comentários, hunting de falhas
|
|
4
|
+
> **Keywords:** "PR", "pull request", "revisar PR", "análise de PR", "PR review", "comment analyzer", "silent failure"
|
|
5
|
+
> **Prioridade:** ALTA
|
|
6
|
+
> **Namespace:** [OFFICIAL]
|
|
7
|
+
> **Tools:** Read, Glob, Grep, Bash, Task
|
|
8
|
+
|
|
9
|
+
## Quando NÃO Ativar
|
|
10
|
+
|
|
11
|
+
- Code review geral sem contexto de PR
|
|
12
|
+
- Criação de PRs (usar git workflow)
|
|
13
|
+
- Perguntas sobre PRs sem análise
|
|
14
|
+
- Quando usuário explicitamente pedir skill diferente
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Core Purpose
|
|
19
|
+
|
|
20
|
+
Bundle of 6 specialized agents for comprehensive PR analysis. Provides deep inspection
|
|
21
|
+
of comments, tests, silent failures, type design, code quality, and simplification opportunities.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## The 6 Specialized Agents
|
|
26
|
+
|
|
27
|
+
### 1. Comment Analyzer
|
|
28
|
+
|
|
29
|
+
**Focus:** PR comment triage
|
|
30
|
+
|
|
31
|
+
- Categorizes comments by severity
|
|
32
|
+
- Identifies blocking vs non-blocking
|
|
33
|
+
- Summarizes discussion threads
|
|
34
|
+
- Highlights unresolved items
|
|
35
|
+
- Tracks comment resolution status
|
|
36
|
+
|
|
37
|
+
### 2. PR Test Analyzer
|
|
38
|
+
|
|
39
|
+
**Focus:** Test coverage validation
|
|
40
|
+
|
|
41
|
+
- Identifies untested code paths
|
|
42
|
+
- Suggests missing test cases
|
|
43
|
+
- Validates test quality
|
|
44
|
+
- Checks edge case coverage
|
|
45
|
+
- Reviews test naming/structure
|
|
46
|
+
|
|
47
|
+
### 3. Silent Failure Hunter
|
|
48
|
+
|
|
49
|
+
**Focus:** Hidden bug detection
|
|
50
|
+
|
|
51
|
+
- Finds swallowed exceptions
|
|
52
|
+
- Identifies missing error handling
|
|
53
|
+
- Detects async/await issues
|
|
54
|
+
- Spots race conditions
|
|
55
|
+
- Finds resource leaks
|
|
56
|
+
|
|
57
|
+
### 4. Type Design Analyzer
|
|
58
|
+
|
|
59
|
+
**Focus:** Type system quality
|
|
60
|
+
|
|
61
|
+
- Reviews type definitions
|
|
62
|
+
- Identifies type safety issues
|
|
63
|
+
- Suggests better type patterns
|
|
64
|
+
- Checks generic usage
|
|
65
|
+
- Validates interface design
|
|
66
|
+
|
|
67
|
+
### 5. Code Reviewer
|
|
68
|
+
|
|
69
|
+
**Focus:** General code quality
|
|
70
|
+
|
|
71
|
+
- Style consistency
|
|
72
|
+
- Best practices adherence
|
|
73
|
+
- Pattern compliance
|
|
74
|
+
- Documentation quality
|
|
75
|
+
- Naming conventions
|
|
76
|
+
|
|
77
|
+
### 6. Code Simplifier
|
|
78
|
+
|
|
79
|
+
**Focus:** Complexity reduction
|
|
80
|
+
|
|
81
|
+
- Identifies over-engineering
|
|
82
|
+
- Suggests simplifications
|
|
83
|
+
- Removes dead code
|
|
84
|
+
- Consolidates duplicates
|
|
85
|
+
- Improves readability
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Agent Activation
|
|
90
|
+
|
|
91
|
+
Each agent can be invoked individually or as a full suite:
|
|
92
|
+
|
|
93
|
+
| Command | Agents Activated |
|
|
94
|
+
|---------|------------------|
|
|
95
|
+
| `/pr-review:full` | All 6 agents |
|
|
96
|
+
| `/pr-review:comments` | Comment Analyzer |
|
|
97
|
+
| `/pr-review:tests` | PR Test Analyzer |
|
|
98
|
+
| `/pr-review:failures` | Silent Failure Hunter |
|
|
99
|
+
| `/pr-review:types` | Type Design Analyzer |
|
|
100
|
+
| `/pr-review:quality` | Code Reviewer |
|
|
101
|
+
| `/pr-review:simplify` | Code Simplifier |
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Output Format
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
109
|
+
║ PR REVIEW TOOLKIT REPORT ║
|
|
110
|
+
╠══════════════════════════════════════════════════════════════════════════════╣
|
|
111
|
+
║ PR: #[number] - [title] ║
|
|
112
|
+
║ Agents Run: [list] ║
|
|
113
|
+
║ Files Analyzed: [N] ║
|
|
114
|
+
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
115
|
+
|
|
116
|
+
┌─ COMMENT ANALYZER ──────────────────────────────────────────────────────────┐
|
|
117
|
+
│ Blocking: [N] | Suggestions: [N] | Resolved: [N] │
|
|
118
|
+
│ │
|
|
119
|
+
│ BLOCKING ITEMS: │
|
|
120
|
+
│ - [item description] @ file:line │
|
|
121
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
122
|
+
|
|
123
|
+
┌─ SILENT FAILURE HUNTER ─────────────────────────────────────────────────────┐
|
|
124
|
+
│ Potential Issues Found: [N] │
|
|
125
|
+
│ │
|
|
126
|
+
│ ⚠️ [issue description] │
|
|
127
|
+
│ Location: file:line │
|
|
128
|
+
│ Risk: [HIGH | MEDIUM | LOW] │
|
|
129
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
130
|
+
|
|
131
|
+
┌─ TEST ANALYZER ─────────────────────────────────────────────────────────────┐
|
|
132
|
+
│ Coverage Delta: [+/-X%] │
|
|
133
|
+
│ Missing Tests: [N] │
|
|
134
|
+
│ │
|
|
135
|
+
│ SUGGESTED TESTS: │
|
|
136
|
+
│ - [test case description] │
|
|
137
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
138
|
+
|
|
139
|
+
┌─ TYPE DESIGN ANALYZER ──────────────────────────────────────────────────────┐
|
|
140
|
+
│ Type Issues: [N] │
|
|
141
|
+
│ │
|
|
142
|
+
│ RECOMMENDATIONS: │
|
|
143
|
+
│ - [recommendation] │
|
|
144
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
145
|
+
|
|
146
|
+
┌─ CODE SIMPLIFIER ───────────────────────────────────────────────────────────┐
|
|
147
|
+
│ Simplification Opportunities: [N] │
|
|
148
|
+
│ │
|
|
149
|
+
│ SUGGESTIONS: │
|
|
150
|
+
│ - [simplification suggestion] │
|
|
151
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
152
|
+
|
|
153
|
+
┌─ SUMMARY ───────────────────────────────────────────────────────────────────┐
|
|
154
|
+
│ ✅ Ready to merge: [YES | NO | NEEDS WORK] │
|
|
155
|
+
│ 📋 Action items: [N] │
|
|
156
|
+
│ ⏱️ Estimated fix time: [estimate] │
|
|
157
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## Example Prompts This Skill Handles
|
|
163
|
+
|
|
164
|
+
- "Analise o PR #123 completamente"
|
|
165
|
+
- "Review the pull request for silent failures"
|
|
166
|
+
- "Verifique os comentários não resolvidos no PR"
|
|
167
|
+
- "Hunt for async issues in this PR"
|
|
168
|
+
- "Simplifique o código deste pull request"
|
|
169
|
+
- "Check test coverage for PR changes"
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Integration Notes
|
|
174
|
+
|
|
175
|
+
This skill is part of the **Claude Code Official Skills** collection.
|
|
176
|
+
Namespace: `[OFFICIAL]` - Distinguishes from Mega Brain custom skills.
|
|
177
|
+
|
|
178
|
+
For custom Mega Brain skills, see: `/.claude/skills/`
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: process-[sua-empresa]-inbox
|
|
3
|
+
description: "Processa arquivos no INBOX [SUA EMPRESA], classifica, extrai insights, e move para pasta destino. Use quando: novos arquivos em inbox, processar conteúdo [SUA EMPRESA], atualizar contexto da empresa."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Process [SUA EMPRESA] Inbox
|
|
7
|
+
|
|
8
|
+
Pipeline de processamento de conteúdo interno da [SUA EMPRESA].
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Quando Usar
|
|
13
|
+
|
|
14
|
+
- Novos arquivos adicionados em `/[sua-empresa]/inbox/`
|
|
15
|
+
- Atualização de contexto da empresa necessária
|
|
16
|
+
- Processamento de calls, planilhas, documentos internos
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## O Que Faz
|
|
21
|
+
|
|
22
|
+
1. **Escaneia** `/[sua-empresa]/inbox/` por arquivos não processados
|
|
23
|
+
2. **Classifica** cada arquivo por tipo e categoria
|
|
24
|
+
3. **Extrai** CHUNKS e INSIGHTS relevantes
|
|
25
|
+
4. **Move** para pasta destino apropriada
|
|
26
|
+
5. **Indexa** em `_INDEX.md` e `[SUA EMPRESA]-STATE.json`
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Fluxo de Processamento
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
┌────────────────────────────────────────────────────────────────────────────┐
|
|
34
|
+
│ PASSO 1: SCAN │
|
|
35
|
+
├────────────────────────────────────────────────────────────────────────────┤
|
|
36
|
+
│ 1. Listar arquivos em /[sua-empresa]/inbox/ │
|
|
37
|
+
│ 2. Ignorar README.md │
|
|
38
|
+
│ 3. Para cada arquivo: │
|
|
39
|
+
│ - Detectar extensão │
|
|
40
|
+
│ - Ler conteúdo │
|
|
41
|
+
│ - Classificar tipo │
|
|
42
|
+
└────────────────────────────────────────────────────────────────────────────┘
|
|
43
|
+
│
|
|
44
|
+
▼
|
|
45
|
+
┌────────────────────────────────────────────────────────────────────────────┐
|
|
46
|
+
│ PASSO 2: CLASSIFICAÇÃO │
|
|
47
|
+
├────────────────────────────────────────────────────────────────────────────┤
|
|
48
|
+
│ Detectar tipo baseado em: │
|
|
49
|
+
│ - Nome do arquivo (call-, planilha-, contrato-) │
|
|
50
|
+
│ - Extensão (.txt, .csv, .pdf, .md) │
|
|
51
|
+
│ - Conteúdo (keywords: "transcrição", "reunião", "KPI", etc.) │
|
|
52
|
+
│ │
|
|
53
|
+
│ TIPOS: │
|
|
54
|
+
│ - CALL_MENTOR: Calls com mentores externos │
|
|
55
|
+
│ - CALL_TEAM: Reuniões internas │
|
|
56
|
+
│ - CALL_CLIENT: Calls com clientes │
|
|
57
|
+
│ - FINANCE: Planilhas financeiras │
|
|
58
|
+
│ - CONTRACT: Contratos │
|
|
59
|
+
│ - TEAM: Documentos de time │
|
|
60
|
+
│ - STRATEGY: Documentos estratégicos │
|
|
61
|
+
│ - PRODUCT: Documentação de produto │
|
|
62
|
+
│ - MARKETING: Material de marketing │
|
|
63
|
+
└────────────────────────────────────────────────────────────────────────────┘
|
|
64
|
+
│
|
|
65
|
+
▼
|
|
66
|
+
┌────────────────────────────────────────────────────────────────────────────┐
|
|
67
|
+
│ PASSO 3: EXTRAÇÃO (por tipo) │
|
|
68
|
+
├────────────────────────────────────────────────────────────────────────────┤
|
|
69
|
+
│ │
|
|
70
|
+
│ CALL_MENTOR: │
|
|
71
|
+
│ - Extrair DNA 5 camadas ([FILOSOFIA], [MODELO-MENTAL], [HEURISTICA], │
|
|
72
|
+
│ [FRAMEWORK], [METODOLOGIA]) │
|
|
73
|
+
│ - Gerar INSIGHTS-[NOME-MENTOR].md em /07-STRATEGY/ │
|
|
74
|
+
│ - Criar CHUNKS indexados │
|
|
75
|
+
│ │
|
|
76
|
+
│ CALL_TEAM: │
|
|
77
|
+
│ - Extrair DECISÕES tomadas │
|
|
78
|
+
│ - Extrair ACTION ITEMS com responsáveis │
|
|
79
|
+
│ - Gerar resumo executivo │
|
|
80
|
+
│ │
|
|
81
|
+
│ FINANCE: │
|
|
82
|
+
│ - Extrair métricas-chave (MRR, CAC, LTV, etc.) │
|
|
83
|
+
│ - Atualizar DAILY-SNAPSHOT.yaml │
|
|
84
|
+
│ - Detectar thresholds críticos │
|
|
85
|
+
│ │
|
|
86
|
+
│ STRATEGY: │
|
|
87
|
+
│ - Indexar decisões │
|
|
88
|
+
│ - Vincular com contexto existente │
|
|
89
|
+
│ │
|
|
90
|
+
└────────────────────────────────────────────────────────────────────────────┘
|
|
91
|
+
│
|
|
92
|
+
▼
|
|
93
|
+
┌────────────────────────────────────────────────────────────────────────────┐
|
|
94
|
+
│ PASSO 4: MOVIMENTAÇÃO │
|
|
95
|
+
├────────────────────────────────────────────────────────────────────────────┤
|
|
96
|
+
│ │
|
|
97
|
+
│ DESTINOS: │
|
|
98
|
+
│ - CALL_MENTOR → /[sua-empresa]/calls/MENTORS/ │
|
|
99
|
+
│ - CALL_TEAM → /[sua-empresa]/calls/TEAM/ │
|
|
100
|
+
│ - CALL_CLIENT → /[sua-empresa]/calls/CLIENTS/ │
|
|
101
|
+
│ - FINANCE → /[sua-empresa]/02-FINANCE/ │
|
|
102
|
+
│ - CONTRACT → /[sua-empresa]/03-CONTRACTS/ │
|
|
103
|
+
│ - TEAM → /[sua-empresa]/team/ │
|
|
104
|
+
│ - MARKETING → /[sua-empresa]/05-MARKETING/ │
|
|
105
|
+
│ - PRODUCT → /[sua-empresa]/06-PRODUCTS/ │
|
|
106
|
+
│ - STRATEGY → /[sua-empresa]/07-STRATEGY/ │
|
|
107
|
+
│ │
|
|
108
|
+
│ AÇÕES: │
|
|
109
|
+
│ - Renomear com prefixo [[SUA EMPRESA]] │
|
|
110
|
+
│ - Mover para pasta destino │
|
|
111
|
+
│ - Criar backup em inbox/PROCESSED/ se necessário │
|
|
112
|
+
│ │
|
|
113
|
+
└────────────────────────────────────────────────────────────────────────────┘
|
|
114
|
+
│
|
|
115
|
+
▼
|
|
116
|
+
┌────────────────────────────────────────────────────────────────────────────┐
|
|
117
|
+
│ PASSO 5: INDEXAÇÃO │
|
|
118
|
+
├────────────────────────────────────────────────────────────────────────────┤
|
|
119
|
+
│ │
|
|
120
|
+
│ 1. Atualizar /[sua-empresa]/_INDEX.md: │
|
|
121
|
+
│ - Adicionar entrada com link │
|
|
122
|
+
│ - Atualizar contadores │
|
|
123
|
+
│ - Registrar data de processamento │
|
|
124
|
+
│ │
|
|
125
|
+
│ 2. Atualizar /[sua-empresa]/[SUA EMPRESA]-STATE.json: │
|
|
126
|
+
│ - Incrementar contadores por categoria │
|
|
127
|
+
│ - Atualizar last_processed_at │
|
|
128
|
+
│ - Registrar arquivo processado │
|
|
129
|
+
│ │
|
|
130
|
+
│ 3. Gerar LOG em /logs/[SUA EMPRESA]-PIPELINE/: │
|
|
131
|
+
│ - PROCESS-YYYY-MM-DD-HHmm.md │
|
|
132
|
+
│ - Detalhes de cada arquivo processado │
|
|
133
|
+
│ │
|
|
134
|
+
└────────────────────────────────────────────────────────────────────────────┘
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## Output
|
|
140
|
+
|
|
141
|
+
Após processamento, entregar relatório:
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
145
|
+
║ [SUA EMPRESA] INBOX PROCESSING - COMPLETE ║
|
|
146
|
+
╠══════════════════════════════════════════════════════════════════════════════╣
|
|
147
|
+
║ Data: YYYY-MM-DD HH:MM ║
|
|
148
|
+
║ Arquivos processados: N ║
|
|
149
|
+
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
150
|
+
|
|
151
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
152
|
+
│ ARQUIVOS PROCESSADOS │
|
|
153
|
+
├────────────────────────────────────┬────────────┬───────────────────────────┤
|
|
154
|
+
│ ARQUIVO │ TIPO │ DESTINO │
|
|
155
|
+
├────────────────────────────────────┼────────────┼───────────────────────────┤
|
|
156
|
+
│ [arquivo1.txt] │ CALL_MENTOR│ /calls/MENTORS/ │
|
|
157
|
+
│ [arquivo2.csv] │ FINANCE │ /02-FINANCE/ │
|
|
158
|
+
└────────────────────────────────────┴────────────┴───────────────────────────┘
|
|
159
|
+
|
|
160
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
161
|
+
│ INSIGHTS EXTRAÍDOS │
|
|
162
|
+
├─────────────────────────────────────────────────────────────────────────────┤
|
|
163
|
+
│ [Lista de insights principais] │
|
|
164
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
165
|
+
|
|
166
|
+
✅ _INDEX.md atualizado
|
|
167
|
+
✅ [SUA EMPRESA]-STATE.json atualizado
|
|
168
|
+
✅ Log salvo em /logs/[SUA EMPRESA]-PIPELINE/
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Regras
|
|
174
|
+
|
|
175
|
+
- **NUNCA** deletar arquivos originais sem backup
|
|
176
|
+
- **SEMPRE** atualizar _INDEX.md após processamento
|
|
177
|
+
- **SEMPRE** gerar log de processamento
|
|
178
|
+
- **SEMPRE** aplicar marcação [[SUA EMPRESA]] nos arquivos movidos
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
**Versão:** 1.0.0
|
|
183
|
+
**Última atualização:** 2026-01-11
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
# SKILL-PYTHON-MEGABRAIN
|
|
2
|
+
## Padrões de Código Python do Mega Brain
|
|
3
|
+
|
|
4
|
+
> **Auto-Trigger:** Criação/edição de arquivos .py no projeto
|
|
5
|
+
> **Keywords:** "script", "python", "código", "função", "automação"
|
|
6
|
+
> **Prioridade:** ALTA
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## PROPÓSITO
|
|
11
|
+
|
|
12
|
+
Garantir que todo código Python do Mega Brain siga padrões de:
|
|
13
|
+
- Legibilidade e manutenibilidade
|
|
14
|
+
- Documentação inline
|
|
15
|
+
- Tratamento de erros
|
|
16
|
+
- Integração com o ecossistema
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## QUANDO USAR
|
|
21
|
+
|
|
22
|
+
### ✅ USAR quando:
|
|
23
|
+
- Criar novos scripts Python
|
|
24
|
+
- Modificar scripts existentes
|
|
25
|
+
- Criar funções de processamento
|
|
26
|
+
- Desenvolver integrações
|
|
27
|
+
|
|
28
|
+
### ❌ NÃO USAR quando:
|
|
29
|
+
- Scripts one-off descartáveis
|
|
30
|
+
- Notebooks exploratórios
|
|
31
|
+
- Código de terceiros
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## REGRAS OBRIGATÓRIAS
|
|
36
|
+
|
|
37
|
+
### Estrutura de Script
|
|
38
|
+
|
|
39
|
+
```python
|
|
40
|
+
#!/usr/bin/env python3
|
|
41
|
+
"""
|
|
42
|
+
[NOME DO SCRIPT] - [Descrição em uma linha]
|
|
43
|
+
============================================
|
|
44
|
+
|
|
45
|
+
[Descrição mais detalhada do que o script faz]
|
|
46
|
+
|
|
47
|
+
Uso:
|
|
48
|
+
python script.py [argumentos]
|
|
49
|
+
|
|
50
|
+
Exemplos:
|
|
51
|
+
python script.py --input arquivo.txt
|
|
52
|
+
python script.py --process-all
|
|
53
|
+
|
|
54
|
+
Dependências:
|
|
55
|
+
pip install [pacotes necessários]
|
|
56
|
+
|
|
57
|
+
Variáveis de ambiente:
|
|
58
|
+
VAR_NAME - Descrição da variável
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
import os
|
|
62
|
+
import sys
|
|
63
|
+
import json
|
|
64
|
+
import argparse
|
|
65
|
+
from pathlib import Path
|
|
66
|
+
from typing import Dict, List, Optional
|
|
67
|
+
from datetime import datetime
|
|
68
|
+
|
|
69
|
+
#=================================
|
|
70
|
+
# CONFIGURAÇÃO
|
|
71
|
+
#=================================
|
|
72
|
+
|
|
73
|
+
PROJECT_ROOT = Path(__file__).parent.parent
|
|
74
|
+
CONFIG_PATH = PROJECT_ROOT / "system" / "config.json"
|
|
75
|
+
|
|
76
|
+
#=================================
|
|
77
|
+
# FUNÇÕES AUXILIARES
|
|
78
|
+
#=================================
|
|
79
|
+
|
|
80
|
+
def funcao_auxiliar():
|
|
81
|
+
"""Descrição da função."""
|
|
82
|
+
pass
|
|
83
|
+
|
|
84
|
+
#=================================
|
|
85
|
+
# FUNÇÕES PRINCIPAIS
|
|
86
|
+
#=================================
|
|
87
|
+
|
|
88
|
+
def funcao_principal():
|
|
89
|
+
"""Descrição da função principal."""
|
|
90
|
+
pass
|
|
91
|
+
|
|
92
|
+
#=================================
|
|
93
|
+
# MAIN
|
|
94
|
+
#=================================
|
|
95
|
+
|
|
96
|
+
def main():
|
|
97
|
+
"""Entry point do script."""
|
|
98
|
+
parser = argparse.ArgumentParser(description="Descrição")
|
|
99
|
+
parser.add_argument("--flag", help="Descrição da flag")
|
|
100
|
+
args = parser.parse_args()
|
|
101
|
+
|
|
102
|
+
# Lógica principal
|
|
103
|
+
pass
|
|
104
|
+
|
|
105
|
+
if __name__ == "__main__":
|
|
106
|
+
main()
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### Naming Conventions
|
|
110
|
+
|
|
111
|
+
| Tipo | Convenção | Exemplo |
|
|
112
|
+
|------|-----------|---------|
|
|
113
|
+
| Arquivos | snake_case | `process_video.py` |
|
|
114
|
+
| Funções | snake_case | `def extract_insights():` |
|
|
115
|
+
| Classes | PascalCase | `class InsightExtractor:` |
|
|
116
|
+
| Constantes | UPPER_SNAKE | `MAX_RETRIES = 3` |
|
|
117
|
+
| Variáveis | snake_case | `chunk_count = 0` |
|
|
118
|
+
|
|
119
|
+
### Docstrings Obrigatórias
|
|
120
|
+
|
|
121
|
+
```python
|
|
122
|
+
def process_content(
|
|
123
|
+
content: str,
|
|
124
|
+
source_id: str,
|
|
125
|
+
options: Optional[Dict] = None
|
|
126
|
+
) -> Dict[str, Any]:
|
|
127
|
+
"""
|
|
128
|
+
Processa conteúdo e extrai insights.
|
|
129
|
+
|
|
130
|
+
Args:
|
|
131
|
+
content: Texto bruto para processar
|
|
132
|
+
source_id: ID da fonte (ex: "CG003")
|
|
133
|
+
options: Configurações opcionais
|
|
134
|
+
- max_chunks: Máximo de chunks (default: 100)
|
|
135
|
+
- min_confidence: Confiança mínima (default: 0.7)
|
|
136
|
+
|
|
137
|
+
Returns:
|
|
138
|
+
Dict contendo:
|
|
139
|
+
- insights: Lista de insights extraídos
|
|
140
|
+
- metadata: Informações do processamento
|
|
141
|
+
- errors: Erros encontrados (se houver)
|
|
142
|
+
|
|
143
|
+
Raises:
|
|
144
|
+
ValueError: Se content estiver vazio
|
|
145
|
+
ProcessingError: Se extração falhar
|
|
146
|
+
|
|
147
|
+
Example:
|
|
148
|
+
>>> result = process_content("texto aqui", "CG003")
|
|
149
|
+
>>> print(result["insights"])
|
|
150
|
+
"""
|
|
151
|
+
pass
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### Type Hints Obrigatórios
|
|
155
|
+
|
|
156
|
+
```python
|
|
157
|
+
# ✅ Correto
|
|
158
|
+
def get_insights(source_id: str, limit: int = 10) -> List[Dict[str, Any]]:
|
|
159
|
+
pass
|
|
160
|
+
|
|
161
|
+
# ❌ Incorreto
|
|
162
|
+
def get_insights(source_id, limit=10):
|
|
163
|
+
pass
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Tratamento de Erros
|
|
167
|
+
|
|
168
|
+
```python
|
|
169
|
+
# Padrão de try/except
|
|
170
|
+
try:
|
|
171
|
+
result = process_file(path)
|
|
172
|
+
except FileNotFoundError:
|
|
173
|
+
print(f"❌ Arquivo não encontrado: {path}")
|
|
174
|
+
return None
|
|
175
|
+
except json.JSONDecodeError as e:
|
|
176
|
+
print(f"❌ JSON inválido: {e}")
|
|
177
|
+
return None
|
|
178
|
+
except Exception as e:
|
|
179
|
+
print(f"❌ Erro inesperado: {e}")
|
|
180
|
+
raise
|
|
181
|
+
|
|
182
|
+
# Logging de progresso
|
|
183
|
+
print(f"📥 Processando: {filename}")
|
|
184
|
+
print(f" ├── Chunks: {chunk_count}")
|
|
185
|
+
print(f" ├── Insights: {insight_count}")
|
|
186
|
+
print(f" └── Status: ✅ Concluído")
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Emojis de Status Padronizados
|
|
190
|
+
|
|
191
|
+
| Emoji | Significado | Uso |
|
|
192
|
+
|-------|-------------|-----|
|
|
193
|
+
| 📥 | Input/Início | Recebendo dados |
|
|
194
|
+
| 🔄 | Processando | Em andamento |
|
|
195
|
+
| ✅ | Sucesso | Concluído com sucesso |
|
|
196
|
+
| ❌ | Erro | Falha |
|
|
197
|
+
| ⚠️ | Aviso | Atenção necessária |
|
|
198
|
+
| 📊 | Métricas | Estatísticas |
|
|
199
|
+
| 💾 | Salvo | Arquivo gravado |
|
|
200
|
+
| 🔍 | Busca | Pesquisando |
|
|
201
|
+
|
|
202
|
+
### Paths do Projeto
|
|
203
|
+
|
|
204
|
+
```python
|
|
205
|
+
from pathlib import Path
|
|
206
|
+
|
|
207
|
+
# Sempre usar Path, nunca strings concatenadas
|
|
208
|
+
PROJECT_ROOT = Path(__file__).parent.parent
|
|
209
|
+
|
|
210
|
+
# Paths padrão do Mega Brain
|
|
211
|
+
PATHS = {
|
|
212
|
+
"inbox": PROJECT_ROOT / "inbox",
|
|
213
|
+
"processing": PROJECT_ROOT / "processing",
|
|
214
|
+
"knowledge": PROJECT_ROOT / "knowledge",
|
|
215
|
+
"playbooks": PROJECT_ROOT / "knowledge/playbooks",
|
|
216
|
+
"system": PROJECT_ROOT / "system",
|
|
217
|
+
"agents": PROJECT_ROOT / "agents",
|
|
218
|
+
"logs": PROJECT_ROOT / "logs",
|
|
219
|
+
}
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### JSON Handling
|
|
223
|
+
|
|
224
|
+
```python
|
|
225
|
+
def load_json(path: Path) -> Dict:
|
|
226
|
+
"""Carrega JSON com tratamento de erro."""
|
|
227
|
+
if not path.exists():
|
|
228
|
+
return {}
|
|
229
|
+
|
|
230
|
+
with open(path, "r", encoding="utf-8") as f:
|
|
231
|
+
return json.load(f)
|
|
232
|
+
|
|
233
|
+
def save_json(data: Dict, path: Path, indent: int = 2) -> None:
|
|
234
|
+
"""Salva JSON com formatação."""
|
|
235
|
+
path.parent.mkdir(parents=True, exist_ok=True)
|
|
236
|
+
|
|
237
|
+
with open(path, "w", encoding="utf-8") as f:
|
|
238
|
+
json.dump(data, f, indent=indent, ensure_ascii=False)
|
|
239
|
+
|
|
240
|
+
print(f"💾 Salvo: {path}")
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
### CLI com Argparse
|
|
244
|
+
|
|
245
|
+
```python
|
|
246
|
+
def main():
|
|
247
|
+
parser = argparse.ArgumentParser(
|
|
248
|
+
description="Descrição do script",
|
|
249
|
+
formatter_class=argparse.RawDescriptionHelpFormatter,
|
|
250
|
+
epilog="""
|
|
251
|
+
Exemplos:
|
|
252
|
+
python script.py --process arquivo.txt
|
|
253
|
+
python script.py --all --verbose
|
|
254
|
+
"""
|
|
255
|
+
)
|
|
256
|
+
|
|
257
|
+
# Argumentos posicionais
|
|
258
|
+
parser.add_argument("input", nargs="?", help="Arquivo de entrada")
|
|
259
|
+
|
|
260
|
+
# Flags
|
|
261
|
+
parser.add_argument("--all", "-a", action="store_true", help="Processar todos")
|
|
262
|
+
parser.add_argument("--verbose", "-v", action="store_true", help="Output detalhado")
|
|
263
|
+
parser.add_argument("--output", "-o", type=Path, help="Diretório de saída")
|
|
264
|
+
|
|
265
|
+
args = parser.parse_args()
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
## PADRÕES DE OUTPUT
|
|
271
|
+
|
|
272
|
+
### Relatório de Processamento
|
|
273
|
+
|
|
274
|
+
```python
|
|
275
|
+
def print_report(stats: Dict) -> None:
|
|
276
|
+
"""Imprime relatório padronizado."""
|
|
277
|
+
print("\n" + "="*60)
|
|
278
|
+
print("📊 RELATÓRIO DE PROCESSAMENTO")
|
|
279
|
+
print("="*60)
|
|
280
|
+
print(f"""
|
|
281
|
+
┌─────────────────────────────────────────────────────────┐
|
|
282
|
+
│ Arquivos processados: {stats['processed']:>5} │
|
|
283
|
+
│ Insights extraídos: {stats['insights']:>5} │
|
|
284
|
+
│ Erros: {stats['errors']:>5} │
|
|
285
|
+
│ Tempo total: {stats['time']:.2f}s │
|
|
286
|
+
└─────────────────────────────────────────────────────────┘
|
|
287
|
+
""")
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## ANTI-PATTERNS (NUNCA FAZER)
|
|
293
|
+
|
|
294
|
+
1. ❌ Funções sem docstring
|
|
295
|
+
2. ❌ Código sem type hints
|
|
296
|
+
3. ❌ `except:` genérico sem especificar exceção
|
|
297
|
+
4. ❌ Paths com strings concatenadas (`"dir/" + "file"`)
|
|
298
|
+
5. ❌ Print sem contexto (`print(x)`)
|
|
299
|
+
6. ❌ Variáveis de uma letra (exceto loops)
|
|
300
|
+
7. ❌ Imports dentro de funções (exceto lazy loading)
|
|
301
|
+
8. ❌ Hardcoded paths absolutos
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
## CHECKLIST PRÉ-ENTREGA
|
|
306
|
+
|
|
307
|
+
- [ ] Docstring no topo do arquivo
|
|
308
|
+
- [ ] Todas funções com docstring
|
|
309
|
+
- [ ] Type hints em todas funções
|
|
310
|
+
- [ ] Tratamento de erros apropriado
|
|
311
|
+
- [ ] Paths usando pathlib.Path
|
|
312
|
+
- [ ] Encoding UTF-8 em file operations
|
|
313
|
+
- [ ] CLI com argparse se aplicável
|
|
314
|
+
- [ ] Emojis de status consistentes
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
## META-INFORMAÇÃO
|
|
319
|
+
|
|
320
|
+
- **Versão:** 1.0.0
|
|
321
|
+
- **Domínio:** Código
|
|
322
|
+
- **Prioridade:** ALTA
|
|
323
|
+
- **Dependências:** Nenhuma
|