@bluefly/openstandardagents 0.1.9
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/.buildkit/agent-first-policy.sh +65 -0
- package/.buildkit/branching-workflow.json +41 -0
- package/.buildkit/hooks.yaml +23 -0
- package/.buildkit/install-buildkit-setup.cjs +483 -0
- package/.cursor/plans/ossa-comprehensive-enhancement-issue-audit-plan.plan.md +735 -0
- package/.cursor/plans/ossa-enterprise-transformation-plan-0ccaf09b.plan.md +373 -0
- package/.cursor/plans/ossa-milestone-organization-and-v0-2-4-release-6dafa4ec.plan.md +214 -0
- package/.cursor/rules/problems.json +483 -0
- package/.cursor/settings.json +29 -0
- package/.cursor/worktrees.json +95 -0
- package/.env.example +41 -0
- package/.env.local +31 -0
- package/.github/ISSUE_TEMPLATE/README.md +33 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +61 -0
- package/.github/ISSUE_TEMPLATE/config.yml +12 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +75 -0
- package/.github/wiki_templates/home.md +39 -0
- package/.gitignore.bak +489 -0
- package/.gitlab-ci-trigger +1 -0
- package/.husky/pre-commit +31 -0
- package/.lintstagedrc.json +16 -0
- package/.redocly.yaml +63 -0
- package/.vscode/extensions.json +6 -0
- package/.vscode/settings.json +3 -0
- package/AUDIT_FIXES.md +139 -0
- package/AUDIT_REPORT.md +308 -0
- package/BUILDKIT_INTEGRATION.md +146 -0
- package/Dockerfile +35 -0
- package/README.md +559 -0
- package/dist/adk/adapters/index.d.ts +64 -0
- package/dist/adk/adapters/index.d.ts.map +1 -0
- package/dist/adk/adapters/index.js +257 -0
- package/dist/adk/adapters/index.js.map +1 -0
- package/dist/adk/agents/custom-agent.d.ts +55 -0
- package/dist/adk/agents/custom-agent.d.ts.map +1 -0
- package/dist/adk/agents/custom-agent.js +167 -0
- package/dist/adk/agents/custom-agent.js.map +1 -0
- package/dist/adk/agents/index.d.ts +64 -0
- package/dist/adk/agents/index.d.ts.map +1 -0
- package/dist/adk/agents/index.js +125 -0
- package/dist/adk/agents/index.js.map +1 -0
- package/dist/adk/agents/llm-agent.d.ts +27 -0
- package/dist/adk/agents/llm-agent.d.ts.map +1 -0
- package/dist/adk/agents/llm-agent.js +63 -0
- package/dist/adk/agents/llm-agent.js.map +1 -0
- package/dist/adk/agents/workflow-agent.d.ts +42 -0
- package/dist/adk/agents/workflow-agent.d.ts.map +1 -0
- package/dist/adk/agents/workflow-agent.js +144 -0
- package/dist/adk/agents/workflow-agent.js.map +1 -0
- package/dist/adk/index.d.ts +10 -0
- package/dist/adk/index.d.ts.map +1 -0
- package/dist/adk/index.js +10 -0
- package/dist/adk/index.js.map +1 -0
- package/dist/adk/orchestration/index.d.ts +63 -0
- package/dist/adk/orchestration/index.d.ts.map +1 -0
- package/dist/adk/orchestration/index.js +264 -0
- package/dist/adk/orchestration/index.js.map +1 -0
- package/dist/adk/state/index.d.ts +73 -0
- package/dist/adk/state/index.d.ts.map +1 -0
- package/dist/adk/state/index.js +177 -0
- package/dist/adk/state/index.js.map +1 -0
- package/dist/adk/tools/index.d.ts +65 -0
- package/dist/adk/tools/index.d.ts.map +1 -0
- package/dist/adk/tools/index.js +252 -0
- package/dist/adk/tools/index.js.map +1 -0
- package/dist/cli/agent-deployment.d.ts +34 -0
- package/dist/cli/agent-deployment.d.ts.map +1 -0
- package/dist/cli/agent-deployment.js +396 -0
- package/dist/cli/agent-deployment.js.map +1 -0
- package/dist/cli/commands/discover.command.d.ts +7 -0
- package/dist/cli/commands/discover.command.d.ts.map +1 -0
- package/dist/cli/commands/discover.command.js +80 -0
- package/dist/cli/commands/discover.command.js.map +1 -0
- package/dist/cli/commands/export.command.d.ts +7 -0
- package/dist/cli/commands/export.command.d.ts.map +1 -0
- package/dist/cli/commands/export.command.js +56 -0
- package/dist/cli/commands/export.command.js.map +1 -0
- package/dist/cli/commands/generate.command.d.ts +7 -0
- package/dist/cli/commands/generate.command.d.ts.map +1 -0
- package/dist/cli/commands/generate.command.js +66 -0
- package/dist/cli/commands/generate.command.js.map +1 -0
- package/dist/cli/commands/gitlab-agent.command.d.ts +8 -0
- package/dist/cli/commands/gitlab-agent.command.d.ts.map +1 -0
- package/dist/cli/commands/gitlab-agent.command.js +201 -0
- package/dist/cli/commands/gitlab-agent.command.js.map +1 -0
- package/dist/cli/commands/import.command.d.ts +7 -0
- package/dist/cli/commands/import.command.d.ts.map +1 -0
- package/dist/cli/commands/import.command.js +36 -0
- package/dist/cli/commands/import.command.js.map +1 -0
- package/dist/cli/commands/init.command.d.ts +7 -0
- package/dist/cli/commands/init.command.d.ts.map +1 -0
- package/dist/cli/commands/init.command.js +146 -0
- package/dist/cli/commands/init.command.js.map +1 -0
- package/dist/cli/commands/migrate.command.d.ts +7 -0
- package/dist/cli/commands/migrate.command.d.ts.map +1 -0
- package/dist/cli/commands/migrate.command.js +110 -0
- package/dist/cli/commands/migrate.command.js.map +1 -0
- package/dist/cli/commands/ossa.d.ts +9 -0
- package/dist/cli/commands/ossa.d.ts.map +1 -0
- package/dist/cli/commands/ossa.js +234 -0
- package/dist/cli/commands/ossa.js.map +1 -0
- package/dist/cli/commands/run.command.d.ts +7 -0
- package/dist/cli/commands/run.command.d.ts.map +1 -0
- package/dist/cli/commands/run.command.js +114 -0
- package/dist/cli/commands/run.command.js.map +1 -0
- package/dist/cli/commands/schema.command.d.ts +7 -0
- package/dist/cli/commands/schema.command.d.ts.map +1 -0
- package/dist/cli/commands/schema.command.js +72 -0
- package/dist/cli/commands/schema.command.js.map +1 -0
- package/dist/cli/commands/validate.command.d.ts +7 -0
- package/dist/cli/commands/validate.command.d.ts.map +1 -0
- package/dist/cli/commands/validate.command.js +125 -0
- package/dist/cli/commands/validate.command.js.map +1 -0
- package/dist/cli/commands/worktree.d.ts +7 -0
- package/dist/cli/commands/worktree.d.ts.map +1 -0
- package/dist/cli/commands/worktree.js +509 -0
- package/dist/cli/commands/worktree.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +50 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/ossa-cli.d.ts +52 -0
- package/dist/cli/ossa-cli.d.ts.map +1 -0
- package/dist/cli/ossa-cli.js +1061 -0
- package/dist/cli/ossa-cli.js.map +1 -0
- package/dist/core/index.d.ts +31 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +37 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/mcp-server-implementation.d.ts +39 -0
- package/dist/core/mcp-server-implementation.d.ts.map +1 -0
- package/dist/core/mcp-server-implementation.js +1262 -0
- package/dist/core/mcp-server-implementation.js.map +1 -0
- package/dist/core/orchestrator/index.d.ts +156 -0
- package/dist/core/orchestrator/index.d.ts.map +1 -0
- package/dist/core/orchestrator/index.js +446 -0
- package/dist/core/orchestrator/index.js.map +1 -0
- package/dist/core/orchestrator/ossa-orchestrator.d.ts +106 -0
- package/dist/core/orchestrator/ossa-orchestrator.d.ts.map +1 -0
- package/dist/core/orchestrator/ossa-orchestrator.js +396 -0
- package/dist/core/orchestrator/ossa-orchestrator.js.map +1 -0
- package/dist/di-container.d.ts +18 -0
- package/dist/di-container.d.ts.map +1 -0
- package/dist/di-container.js +46 -0
- package/dist/di-container.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/protocols/acap.d.ts +61 -0
- package/dist/protocols/acap.d.ts.map +1 -0
- package/dist/protocols/acap.js +92 -0
- package/dist/protocols/acap.js.map +1 -0
- package/dist/protocols/index.d.ts +8 -0
- package/dist/protocols/index.d.ts.map +1 -0
- package/dist/protocols/index.js +8 -0
- package/dist/protocols/index.js.map +1 -0
- package/dist/protocols/rasp.d.ts +58 -0
- package/dist/protocols/rasp.d.ts.map +1 -0
- package/dist/protocols/rasp.js +212 -0
- package/dist/protocols/rasp.js.map +1 -0
- package/dist/repositories/manifest.repository.d.ts +26 -0
- package/dist/repositories/manifest.repository.d.ts.map +1 -0
- package/dist/repositories/manifest.repository.js +90 -0
- package/dist/repositories/manifest.repository.js.map +1 -0
- package/dist/repositories/schema.repository.d.ts +30 -0
- package/dist/repositories/schema.repository.d.ts.map +1 -0
- package/dist/repositories/schema.repository.js +144 -0
- package/dist/repositories/schema.repository.js.map +1 -0
- package/dist/server/simple-app.d.ts +18 -0
- package/dist/server/simple-app.d.ts.map +1 -0
- package/dist/server/simple-app.js +155 -0
- package/dist/server/simple-app.js.map +1 -0
- package/dist/server/types/agent.d.ts +498 -0
- package/dist/server/types/agent.d.ts.map +1 -0
- package/dist/server/types/agent.js +37 -0
- package/dist/server/types/agent.js.map +1 -0
- package/dist/server/types/server.d.ts +370 -0
- package/dist/server/types/server.d.ts.map +1 -0
- package/dist/server/types/server.js +68 -0
- package/dist/server/types/server.js.map +1 -0
- package/dist/services/discovery.service.d.ts +78 -0
- package/dist/services/discovery.service.d.ts.map +1 -0
- package/dist/services/discovery.service.js +212 -0
- package/dist/services/discovery.service.js.map +1 -0
- package/dist/services/generation.service.d.ts +54 -0
- package/dist/services/generation.service.d.ts.map +1 -0
- package/dist/services/generation.service.js +298 -0
- package/dist/services/generation.service.js.map +1 -0
- package/dist/services/gitlab-agent.service.d.ts +94 -0
- package/dist/services/gitlab-agent.service.d.ts.map +1 -0
- package/dist/services/gitlab-agent.service.js +158 -0
- package/dist/services/gitlab-agent.service.js.map +1 -0
- package/dist/services/migration.service.d.ts +30 -0
- package/dist/services/migration.service.d.ts.map +1 -0
- package/dist/services/migration.service.js +231 -0
- package/dist/services/migration.service.js.map +1 -0
- package/dist/services/orchestration/worktree-orchestrator.d.ts +146 -0
- package/dist/services/orchestration/worktree-orchestrator.d.ts.map +1 -0
- package/dist/services/orchestration/worktree-orchestrator.js +591 -0
- package/dist/services/orchestration/worktree-orchestrator.js.map +1 -0
- package/dist/services/runtime/openai.adapter.d.ts +94 -0
- package/dist/services/runtime/openai.adapter.d.ts.map +1 -0
- package/dist/services/runtime/openai.adapter.js +209 -0
- package/dist/services/runtime/openai.adapter.js.map +1 -0
- package/dist/services/validation.service.d.ts +45 -0
- package/dist/services/validation.service.d.ts.map +1 -0
- package/dist/services/validation.service.js +362 -0
- package/dist/services/validation.service.js.map +1 -0
- package/dist/services/validators/anthropic.validator.d.ts +9 -0
- package/dist/services/validators/anthropic.validator.d.ts.map +1 -0
- package/dist/services/validators/anthropic.validator.js +105 -0
- package/dist/services/validators/anthropic.validator.js.map +1 -0
- package/dist/services/validators/autogen.validator.d.ts +9 -0
- package/dist/services/validators/autogen.validator.d.ts.map +1 -0
- package/dist/services/validators/autogen.validator.js +111 -0
- package/dist/services/validators/autogen.validator.js.map +1 -0
- package/dist/services/validators/crewai.validator.d.ts +9 -0
- package/dist/services/validators/crewai.validator.d.ts.map +1 -0
- package/dist/services/validators/crewai.validator.js +117 -0
- package/dist/services/validators/crewai.validator.js.map +1 -0
- package/dist/services/validators/cursor.validator.d.ts +9 -0
- package/dist/services/validators/cursor.validator.d.ts.map +1 -0
- package/dist/services/validators/cursor.validator.js +88 -0
- package/dist/services/validators/cursor.validator.js.map +1 -0
- package/dist/services/validators/index.d.ts +15 -0
- package/dist/services/validators/index.d.ts.map +1 -0
- package/dist/services/validators/index.js +15 -0
- package/dist/services/validators/index.js.map +1 -0
- package/dist/services/validators/langchain.validator.d.ts +9 -0
- package/dist/services/validators/langchain.validator.d.ts.map +1 -0
- package/dist/services/validators/langchain.validator.js +103 -0
- package/dist/services/validators/langchain.validator.js.map +1 -0
- package/dist/services/validators/langflow.validator.d.ts +9 -0
- package/dist/services/validators/langflow.validator.d.ts.map +1 -0
- package/dist/services/validators/langflow.validator.js +92 -0
- package/dist/services/validators/langflow.validator.js.map +1 -0
- package/dist/services/validators/langgraph.validator.d.ts +9 -0
- package/dist/services/validators/langgraph.validator.d.ts.map +1 -0
- package/dist/services/validators/langgraph.validator.js +123 -0
- package/dist/services/validators/langgraph.validator.js.map +1 -0
- package/dist/services/validators/llamaindex.validator.d.ts +9 -0
- package/dist/services/validators/llamaindex.validator.d.ts.map +1 -0
- package/dist/services/validators/llamaindex.validator.js +121 -0
- package/dist/services/validators/llamaindex.validator.js.map +1 -0
- package/dist/services/validators/openai.validator.d.ts +9 -0
- package/dist/services/validators/openai.validator.d.ts.map +1 -0
- package/dist/services/validators/openai.validator.js +126 -0
- package/dist/services/validators/openai.validator.js.map +1 -0
- package/dist/services/validators/vercel-ai.validator.d.ts +9 -0
- package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -0
- package/dist/services/validators/vercel-ai.validator.js +99 -0
- package/dist/services/validators/vercel-ai.validator.js.map +1 -0
- package/dist/services/worktree/branching-strategy.d.ts +17 -0
- package/dist/services/worktree/branching-strategy.d.ts.map +1 -0
- package/dist/services/worktree/branching-strategy.js +66 -0
- package/dist/services/worktree/branching-strategy.js.map +1 -0
- package/dist/services/worktree/git-worktree-manager.d.ts +32 -0
- package/dist/services/worktree/git-worktree-manager.d.ts.map +1 -0
- package/dist/services/worktree/git-worktree-manager.js +61 -0
- package/dist/services/worktree/git-worktree-manager.js.map +1 -0
- package/dist/spec/v0.1.9/agent-autonomous-extensions.json +234 -0
- package/dist/spec/v0.1.9/ecosystem-compliance.json +235 -0
- package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json +695 -0
- package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
- package/dist/spec/v0.1.9/reasoning-compliance.json +654 -0
- package/dist/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
- package/dist/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
- package/dist/spec/v0.2.2/kagent-enhancements.json +395 -0
- package/dist/spec/v0.2.2/ossa-0.2.2.schema.json +906 -0
- package/dist/spec/v0.2.2/ossa-0.2.2.yaml +448 -0
- package/dist/spec/v0.2.2/ossa-reasoning-compliance-1.0.schema.json +424 -0
- package/dist/spec/v0.2.3/README.md +154 -0
- package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/dist/spec/v0.2.3/ossa-0.2.3.schema.json +1397 -0
- package/dist/spec/v0.2.3/ossa-0.2.3.yaml +448 -0
- package/dist/spec/v0.2.4-dev/README.md +61 -0
- package/dist/spec/v0.2.4-dev/RELEASE-PROCESS.md +130 -0
- package/dist/spec/v0.2.4-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.4-dev/openapi/CHANGELOG-0.2.4.md +177 -0
- package/dist/spec/v0.2.4-dev/openapi/README-0.2.4.md +51 -0
- package/dist/spec/v0.2.4-dev/openapi/VERIFICATION-0.2.4.md +147 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1717 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -0
- package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +317 -0
- package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.schema.json +1732 -0
- package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +409 -0
- package/dist/specification/validator.d.ts +82 -0
- package/dist/specification/validator.d.ts.map +1 -0
- package/dist/specification/validator.js +562 -0
- package/dist/specification/validator.js.map +1 -0
- package/dist/types/acdl-api.d.ts +335 -0
- package/dist/types/acdl-api.d.ts.map +1 -0
- package/dist/types/acdl-api.js +6 -0
- package/dist/types/acdl-api.js.map +1 -0
- package/dist/types/agents/index.d.ts +53 -0
- package/dist/types/agents/index.d.ts.map +1 -0
- package/dist/types/agents/index.js +5 -0
- package/dist/types/agents/index.js.map +1 -0
- package/dist/types/api.d.ts +225 -0
- package/dist/types/api.d.ts.map +1 -0
- package/dist/types/api.js +6 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/architecture/index.d.ts +530 -0
- package/dist/types/architecture/index.d.ts.map +1 -0
- package/dist/types/architecture/index.js +258 -0
- package/dist/types/architecture/index.js.map +1 -0
- package/dist/types/index.d.ts +279 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +68 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/openapi-extensions.d.ts +164 -0
- package/dist/types/openapi-extensions.d.ts.map +1 -0
- package/dist/types/openapi-extensions.js +6 -0
- package/dist/types/openapi-extensions.js.map +1 -0
- package/dist/types/policies/index.d.ts +35 -0
- package/dist/types/policies/index.d.ts.map +1 -0
- package/dist/types/policies/index.js +5 -0
- package/dist/types/policies/index.js.map +1 -0
- package/dist/types/workflows/index.d.ts +40 -0
- package/dist/types/workflows/index.d.ts.map +1 -0
- package/dist/types/workflows/index.js +5 -0
- package/dist/types/workflows/index.js.map +1 -0
- package/dist/utils/version-resolver.d.ts +28 -0
- package/dist/utils/version-resolver.d.ts.map +1 -0
- package/dist/utils/version-resolver.js +110 -0
- package/dist/utils/version-resolver.js.map +1 -0
- package/docker-compose.yml +160 -0
- package/junit.xml +1 -0
- package/package.json +105 -0
- package/public/api-docs.html +206 -0
- package/public/assets/favicon.svg +8 -0
- package/public/assets/script.js +279 -0
- package/public/assets/style.css +632 -0
- package/public/index.html +307 -0
- package/public/redocly-config.yaml +80 -0
- package/public/src/api/acdl-specification.yml +531 -0
- package/public/src/api/clean-architecture.openapi.yml +1435 -0
- package/public/src/api/context7-mcp.openapi.yml +313 -0
- package/public/src/api/magic-mcp.openapi.yml +647 -0
- package/public/src/api/mcp-infrastructure.openapi.yml +904 -0
- package/public/src/api/orchestration.openapi.yml +444 -0
- package/public/src/api/ossa-complete.openapi.yml +2250 -0
- package/public/src/api/project-discovery.openapi.yml +1293 -0
- package/public/src/api/rebuild-audit.openapi.yml +800 -0
- package/public/src/api/specification.openapi.yml +498 -0
- package/public/src/api/voice-agent-specification.yml +640 -0
- package/public/src/api/web-eval-mcp.openapi.yml +426 -0
- package/pyrightconfig.json +13 -0
- package/redocly.yaml +56 -0
- package/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
- package/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
- package/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
- package/spec/v0.2.4/ossa-0.2.4.schema.json +1717 -0
- package/spec/v0.2.4/ossa-0.2.4.yaml +581 -0
- package/specs/README.md +31 -0
- package/specs/acdl-specification.yml +531 -0
- package/specs/clean-architecture.openapi.yml +1435 -0
- package/specs/context7-mcp.openapi.yml +313 -0
- package/specs/magic-mcp.openapi.yml +647 -0
- package/specs/mcp-infrastructure.openapi.yml +904 -0
- package/specs/orchestration.openapi.yml +444 -0
- package/specs/ossa-complete.openapi.yml +2250 -0
- package/specs/project-discovery.openapi.yml +1293 -0
- package/specs/rebuild-audit.openapi.yml +800 -0
- package/specs/specification.openapi.yml +498 -0
- package/specs/test-api.openapi.yml +20 -0
- package/specs/voice-agent-specification.yml +640 -0
- package/specs/web-eval-mcp.openapi.yml +426 -0
- package/src/adk/adapters/index.ts +310 -0
- package/src/adk/agents/custom-agent.ts +206 -0
- package/src/adk/agents/index.ts +158 -0
- package/src/adk/agents/llm-agent.ts +76 -0
- package/src/adk/agents/workflow-agent.ts +191 -0
- package/src/adk/index.ts +10 -0
- package/src/adk/orchestration/index.ts +352 -0
- package/src/adk/state/index.ts +217 -0
- package/src/adk/tools/index.ts +291 -0
- package/src/api/acdl-specification.yml +531 -0
- package/src/api/agent-manifest.schema.json +859 -0
- package/src/api/agent-worktree-schema.json +320 -0
- package/src/api/clean-architecture.openapi.yml +1435 -0
- package/src/api/context7-mcp.openapi.yml +313 -0
- package/src/api/magic-mcp.openapi.yml +647 -0
- package/src/api/mcp-infrastructure.openapi.yml +904 -0
- package/src/api/openapi.redoc.config.json +6 -0
- package/src/api/orchestration.openapi.yml +444 -0
- package/src/api/ossa-complete.openapi.yml +2250 -0
- package/src/api/project-discovery.openapi.yml +1293 -0
- package/src/api/rebuild-audit.openapi.yml +800 -0
- package/src/api/specification.openapi.yml +498 -0
- package/src/api/test-api.openapi.yml +20 -0
- package/src/api/voice-agent-specification.yml +640 -0
- package/src/api/web-eval-mcp.openapi.yml +426 -0
- package/src/api/workflow.schema.json +524 -0
- package/src/cli/agent-deployment.ts +452 -0
- package/src/cli/commands/ossa.ts +272 -0
- package/src/cli/commands/worktree.ts +603 -0
- package/src/cli/ossa-cli.ts +1176 -0
- package/src/core/index.ts +42 -0
- package/src/core/mcp-server-implementation.ts +1409 -0
- package/src/core/orchestrator/index.ts +611 -0
- package/src/core/orchestrator/ossa-orchestrator.ts +504 -0
- package/src/mcp/simple-server.ts +322 -0
- package/src/protocols/acap.ts +146 -0
- package/src/protocols/index.ts +8 -0
- package/src/protocols/rasp.ts +263 -0
- package/src/server/app.ts +472 -0
- package/src/server/middleware/agentAccess.ts +10 -0
- package/src/server/middleware/asyncHandler.ts +10 -0
- package/src/server/middleware/auth.ts +10 -0
- package/src/server/middleware/errorHandler.ts +9 -0
- package/src/server/middleware/logging.ts +10 -0
- package/src/server/middleware/metrics.ts +10 -0
- package/src/server/middleware/validation.ts +10 -0
- package/src/server/routes/agents.ts +632 -0
- package/src/server/routes/monitoring.ts +13 -0
- package/src/server/routes/orchestration.ts +13 -0
- package/src/server/routes/specifications.ts +13 -0
- package/src/server/services/AgentService.ts +46 -0
- package/src/server/services/ExecutionService.ts +51 -0
- package/src/server/services/SpecificationService.ts +22 -0
- package/src/server/services/WebhookService.ts +24 -0
- package/src/server/simple-app.ts +174 -0
- package/src/server/types/agent.ts +612 -0
- package/src/server/types/server.ts +465 -0
- package/src/services/orchestration/worktree-orchestrator.ts +779 -0
- package/src/services/worktree/branching-strategy.ts +76 -0
- package/src/services/worktree/git-worktree-manager.ts +86 -0
- package/website/.next/BUILD_ID +1 -0
- package/website/.next/app-build-manifest.json +151 -0
- package/website/.next/app-path-routes-manifest.json +19 -0
- package/website/.next/build-manifest.json +33 -0
- package/website/.next/cache/.previewinfo +1 -0
- package/website/.next/cache/.rscinfo +1 -0
- package/website/.next/cache/.tsbuildinfo +1 -0
- package/website/.next/cache/fetch-cache/920aec34c288eefa97c5efba3baf95a846a0beb0c48a5064980a2c24b83e941c +1 -0
- package/website/.next/cache/fetch-cache/c2ad7a72b43463a0daaa85ca926a8af38defd17ecb64f1fdd2dd4fe2293e8b26 +1 -0
- package/website/.next/cache/fetch-cache/d10eb963d5980c8a50ee9ed24472339ee6da054ead33e00676e61e8b8e62cc83 +1 -0
- package/website/.next/cache/fetch-cache/f243d84640477f3205b74a85013018acd63b692144675630a74d1af8a3e9eab5 +1 -0
- package/website/.next/cache/webpack/client-production/0.pack +0 -0
- package/website/.next/cache/webpack/client-production/1.pack +0 -0
- package/website/.next/cache/webpack/client-production/10.pack +0 -0
- package/website/.next/cache/webpack/client-production/11.pack +0 -0
- package/website/.next/cache/webpack/client-production/12.pack +0 -0
- package/website/.next/cache/webpack/client-production/13.pack +0 -0
- package/website/.next/cache/webpack/client-production/14.pack +0 -0
- package/website/.next/cache/webpack/client-production/15.pack +0 -0
- package/website/.next/cache/webpack/client-production/16.pack +0 -0
- package/website/.next/cache/webpack/client-production/17.pack +0 -0
- package/website/.next/cache/webpack/client-production/18.pack +0 -0
- package/website/.next/cache/webpack/client-production/2.pack +0 -0
- package/website/.next/cache/webpack/client-production/3.pack +0 -0
- package/website/.next/cache/webpack/client-production/4.pack +0 -0
- package/website/.next/cache/webpack/client-production/5.pack +0 -0
- package/website/.next/cache/webpack/client-production/6.pack +0 -0
- package/website/.next/cache/webpack/client-production/7.pack +0 -0
- package/website/.next/cache/webpack/client-production/8.pack +0 -0
- package/website/.next/cache/webpack/client-production/9.pack +0 -0
- package/website/.next/cache/webpack/client-production/index.pack +0 -0
- package/website/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/website/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/website/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/website/.next/cache/webpack/server-production/0.pack +0 -0
- package/website/.next/cache/webpack/server-production/1.pack +0 -0
- package/website/.next/cache/webpack/server-production/10.pack +0 -0
- package/website/.next/cache/webpack/server-production/11.pack +0 -0
- package/website/.next/cache/webpack/server-production/12.pack +0 -0
- package/website/.next/cache/webpack/server-production/2.pack +0 -0
- package/website/.next/cache/webpack/server-production/3.pack +0 -0
- package/website/.next/cache/webpack/server-production/4.pack +0 -0
- package/website/.next/cache/webpack/server-production/5.pack +0 -0
- package/website/.next/cache/webpack/server-production/6.pack +0 -0
- package/website/.next/cache/webpack/server-production/7.pack +0 -0
- package/website/.next/cache/webpack/server-production/8.pack +0 -0
- package/website/.next/cache/webpack/server-production/9.pack +0 -0
- package/website/.next/cache/webpack/server-production/index.pack +0 -0
- package/website/.next/cache/webpack/server-production/index.pack.old +0 -0
- package/website/.next/diagnostics/build-diagnostics.json +6 -0
- package/website/.next/diagnostics/framework.json +1 -0
- package/website/.next/export-detail.json +5 -0
- package/website/.next/export-marker.json +6 -0
- package/website/.next/images-manifest.json +57 -0
- package/website/.next/next-minimal-server.js.nft.json +1 -0
- package/website/.next/next-server.js.nft.json +1 -0
- package/website/.next/package.json +1 -0
- package/website/.next/prerender-manifest.json +2143 -0
- package/website/.next/react-loadable-manifest.json +1898 -0
- package/website/.next/required-server-files.json +320 -0
- package/website/.next/routes-manifest.json +161 -0
- package/website/.next/server/app/_not-found/page.js +2 -0
- package/website/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/website/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/_not-found.html +1 -0
- package/website/.next/server/app/_not-found.meta +8 -0
- package/website/.next/server/app/_not-found.rsc +23 -0
- package/website/.next/server/app/about/page.js +2 -0
- package/website/.next/server/app/about/page.js.nft.json +1 -0
- package/website/.next/server/app/about/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/about.html +1 -0
- package/website/.next/server/app/about.meta +7 -0
- package/website/.next/server/app/about.rsc +40 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.html +217 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.meta +7 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.rsc +308 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.html +180 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.meta +7 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.rsc +232 -0
- package/website/.next/server/app/blog/[slug]/page.js +2 -0
- package/website/.next/server/app/blog/[slug]/page.js.nft.json +1 -0
- package/website/.next/server/app/blog/[slug]/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.html +263 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.meta +7 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.rsc +351 -0
- package/website/.next/server/app/blog/ossa-production-results.html +198 -0
- package/website/.next/server/app/blog/ossa-production-results.meta +7 -0
- package/website/.next/server/app/blog/ossa-production-results.rsc +302 -0
- package/website/.next/server/app/blog/page.js +2 -0
- package/website/.next/server/app/blog/page.js.nft.json +1 -0
- package/website/.next/server/app/blog/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/blog/welcome-to-ossa.html +22 -0
- package/website/.next/server/app/blog/welcome-to-ossa.meta +7 -0
- package/website/.next/server/app/blog/welcome-to-ossa.rsc +31 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.html +63 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.meta +7 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.rsc +121 -0
- package/website/.next/server/app/blog.html +1 -0
- package/website/.next/server/app/blog.meta +7 -0
- package/website/.next/server/app/blog.rsc +35 -0
- package/website/.next/server/app/design-guide/page.js +12 -0
- package/website/.next/server/app/design-guide/page.js.nft.json +1 -0
- package/website/.next/server/app/design-guide/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/design-guide.html +11 -0
- package/website/.next/server/app/design-guide.meta +7 -0
- package/website/.next/server/app/design-guide.rsc +41 -0
- package/website/.next/server/app/docs.html +1 -0
- package/website/.next/server/app/docs.meta +7 -0
- package/website/.next/server/app/docs.rsc +42 -0
- package/website/.next/server/app/ecosystem/page.js +2 -0
- package/website/.next/server/app/ecosystem/page.js.nft.json +1 -0
- package/website/.next/server/app/ecosystem/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/ecosystem.html +1 -0
- package/website/.next/server/app/ecosystem.meta +7 -0
- package/website/.next/server/app/ecosystem.rsc +40 -0
- package/website/.next/server/app/examples.html +1 -0
- package/website/.next/server/app/examples.meta +7 -0
- package/website/.next/server/app/examples.rsc +14559 -0
- package/website/.next/server/app/index.html +3 -0
- package/website/.next/server/app/index.meta +7 -0
- package/website/.next/server/app/index.rsc +40 -0
- package/website/.next/server/app/license/page.js +2 -0
- package/website/.next/server/app/license/page.js.nft.json +1 -0
- package/website/.next/server/app/license/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/license.html +191 -0
- package/website/.next/server/app/license.meta +7 -0
- package/website/.next/server/app/license.rsc +222 -0
- package/website/.next/server/app/page.js +4 -0
- package/website/.next/server/app/page.js.nft.json +1 -0
- package/website/.next/server/app/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/playground/page.js +111 -0
- package/website/.next/server/app/playground/page.js.nft.json +1 -0
- package/website/.next/server/app/playground/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/playground.html +1 -0
- package/website/.next/server/app/playground.meta +7 -0
- package/website/.next/server/app/playground.rsc +30 -0
- package/website/.next/server/app/robots.txt/route.js +1 -0
- package/website/.next/server/app/robots.txt/route.js.nft.json +1 -0
- package/website/.next/server/app/robots.txt/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/robots.txt.body +6 -0
- package/website/.next/server/app/robots.txt.meta +1 -0
- package/website/.next/server/app/rss.xml/route.js +18 -0
- package/website/.next/server/app/rss.xml/route.js.nft.json +1 -0
- package/website/.next/server/app/rss.xml/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/rss.xml.body +11 -0
- package/website/.next/server/app/rss.xml.meta +1 -0
- package/website/.next/server/app/schema/page.js +76 -0
- package/website/.next/server/app/schema/page.js.nft.json +1 -0
- package/website/.next/server/app/schema/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/schema.html +1 -0
- package/website/.next/server/app/schema.meta +7 -0
- package/website/.next/server/app/schema.rsc +26 -0
- package/website/.next/server/app/sitemap.xml/route.js +1 -0
- package/website/.next/server/app/sitemap.xml/route.js.nft.json +1 -0
- package/website/.next/server/app/sitemap.xml/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/sitemap.xml.body +39 -0
- package/website/.next/server/app/sitemap.xml.meta +1 -0
- package/website/.next/server/app/specification/page.js +10 -0
- package/website/.next/server/app/specification/page.js.nft.json +1 -0
- package/website/.next/server/app/specification/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/specification.html +9 -0
- package/website/.next/server/app/specification.meta +7 -0
- package/website/.next/server/app/specification.rsc +32 -0
- package/website/.next/server/app-paths-manifest.json +19 -0
- package/website/.next/server/chunks/18.js +1 -0
- package/website/.next/server/chunks/227.js +9 -0
- package/website/.next/server/chunks/339.js +25 -0
- package/website/.next/server/chunks/49.js +1 -0
- package/website/.next/server/chunks/51.js +1 -0
- package/website/.next/server/chunks/57.js +1 -0
- package/website/.next/server/chunks/579.js +16 -0
- package/website/.next/server/chunks/611.js +6 -0
- package/website/.next/server/chunks/873.js +22 -0
- package/website/.next/server/chunks/900.js +1 -0
- package/website/.next/server/chunks/97.js +1 -0
- package/website/.next/server/functions-config-manifest.json +4 -0
- package/website/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/website/.next/server/middleware-build-manifest.js +1 -0
- package/website/.next/server/middleware-manifest.json +6 -0
- package/website/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/website/.next/server/next-font-manifest.js +1 -0
- package/website/.next/server/next-font-manifest.json +1 -0
- package/website/.next/server/pages/404.html +1 -0
- package/website/.next/server/pages/500.html +1 -0
- package/website/.next/server/pages/_app.js +1 -0
- package/website/.next/server/pages/_app.js.nft.json +1 -0
- package/website/.next/server/pages/_document.js +1 -0
- package/website/.next/server/pages/_document.js.nft.json +1 -0
- package/website/.next/server/pages/_error.js +19 -0
- package/website/.next/server/pages/_error.js.nft.json +1 -0
- package/website/.next/server/pages-manifest.json +6 -0
- package/website/.next/server/server-reference-manifest.js +1 -0
- package/website/.next/server/server-reference-manifest.json +1 -0
- package/website/.next/server/webpack-runtime.js +1 -0
- package/website/.next/static/IDhDQiozPwOaA3PpMqvTE/_buildManifest.js +1 -0
- package/website/.next/static/IDhDQiozPwOaA3PpMqvTE/_ssgManifest.js +1 -0
- package/website/.next/static/chunks/119.05f66060d7798fc9.js +25 -0
- package/website/.next/static/chunks/255-bf407b21685f2318.js +1 -0
- package/website/.next/static/chunks/451-235273497e501ae9.js +1 -0
- package/website/.next/static/chunks/4bd1b696-409494caf8c83275.js +1 -0
- package/website/.next/static/chunks/619-f072ac750404f9da.js +1 -0
- package/website/.next/static/chunks/651-5cd3c87d43b7eb46.js +1 -0
- package/website/.next/static/chunks/778.278ac2aadb2a1105.js +1 -0
- package/website/.next/static/chunks/890-ab915e0570e1961b.js +1 -0
- package/website/.next/static/chunks/app/_not-found/page-ccdaf9d90b537c5d.js +1 -0
- package/website/.next/static/chunks/app/about/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/blog/[slug]/page-8fd43000c4969233.js +1 -0
- package/website/.next/static/chunks/app/blog/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/design-guide/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/ecosystem/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/layout-ccacbd90656baa78.js +1 -0
- package/website/.next/static/chunks/app/license/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/page-31241dc7465f9590.js +1 -0
- package/website/.next/static/chunks/app/playground/page-c2af00885374900f.js +1 -0
- package/website/.next/static/chunks/app/robots.txt/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/rss.xml/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/schema/page-f7c224b281771083.js +1 -0
- package/website/.next/static/chunks/app/sitemap.xml/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/specification/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/framework-1ce91eb6f9ecda85.js +1 -0
- package/website/.next/static/chunks/main-3099e141650ec47a.js +1 -0
- package/website/.next/static/chunks/main-app-a2fc6ac9305e3090.js +1 -0
- package/website/.next/static/chunks/pages/_app-5addca2b3b969fde.js +1 -0
- package/website/.next/static/chunks/pages/_error-022e4ac7bbb9914f.js +1 -0
- package/website/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/website/.next/static/chunks/webpack-6ecb09e5c6e34cb4.js +1 -0
- package/website/.next/static/css/23135390005d4468.css +3 -0
- package/website/.next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
- package/website/.next/static/media/21350d82a1f187e9-s.woff2 +0 -0
- package/website/.next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
- package/website/.next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
- package/website/.next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
- package/website/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
- package/website/.next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
- package/website/.next/trace +3 -0
- package/website/.next/types/app/about/page.ts +84 -0
- package/website/.next/types/app/blog/[slug]/page.ts +84 -0
- package/website/.next/types/app/blog/page.ts +84 -0
- package/website/.next/types/app/design-guide/page.ts +84 -0
- package/website/.next/types/app/ecosystem/page.ts +84 -0
- package/website/.next/types/app/license/page.ts +84 -0
- package/website/.next/types/app/page.ts +84 -0
- package/website/.next/types/app/playground/page.ts +84 -0
- package/website/.next/types/app/rss.xml/route.ts +347 -0
- package/website/.next/types/app/schema/page.ts +84 -0
- package/website/.next/types/app/specification/page.ts +84 -0
- package/website/.next/types/cache-life.d.ts +141 -0
- package/website/.next/types/package.json +1 -0
- package/website/.next/types/routes.d.ts +85 -0
- package/website/.next/types/validator.ts +187 -0
- package/website/.wiki-export/Agent-Folder-Structure.md +215 -0
- package/website/.wiki-export/CI-STATUS.md +66 -0
- package/website/.wiki-export/COMPLETE-IMPLEMENTATION-CHECKLIST.md +74 -0
- package/website/.wiki-export/DRUPAL-MODULE-INTEGRATION.md +103 -0
- package/website/.wiki-export/FINAL-STATUS.md +63 -0
- package/website/.wiki-export/Getting-Started.md +87 -0
- package/website/.wiki-export/INSTRUCTIONS.md +46 -0
- package/website/.wiki-export/INTEGRATION-ANALYSIS.md +216 -0
- package/website/.wiki-export/MANIFEST.json +62 -0
- package/website/.wiki-export/OSSA-COMPLIANT-BADGE.md +247 -0
- package/website/.wiki-export/Openapi-Extensions.md +930 -0
- package/website/.wiki-export/README.md +31 -0
- package/website/.wiki-export/RELEASE-READINESS.md +95 -0
- package/website/.wiki-export/VERSIONING.md +284 -0
- package/website/lib/versions.json +77 -0
- package/website/next-env.d.ts +6 -0
- package/website/out/app-build-manifest.json +3 -0
- package/website/out/build-manifest.json +17 -0
- package/website/out/cache/.rscinfo +1 -0
- package/website/out/cache/next-devtools-config.json +1 -0
- package/website/out/cache/webpack/client-development/0.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/1.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/2.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/3.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/index.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/index.pack.gz.old +0 -0
- package/website/out/cache/webpack/client-development-fallback/0.pack.gz +0 -0
- package/website/out/cache/webpack/client-development-fallback/index.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/0.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/1.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/2.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/3.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/index.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/index.pack.gz.old +0 -0
- package/website/out/package.json +1 -0
- package/website/out/prerender-manifest.json +11 -0
- package/website/out/react-loadable-manifest.json +1 -0
- package/website/out/routes-manifest.json +1 -0
- package/website/out/server/app-paths-manifest.json +1 -0
- package/website/out/server/interception-route-rewrite-manifest.js +1 -0
- package/website/out/server/middleware-build-manifest.js +19 -0
- package/website/out/server/middleware-manifest.json +6 -0
- package/website/out/server/middleware-react-loadable-manifest.js +1 -0
- package/website/out/server/next-font-manifest.js +1 -0
- package/website/out/server/next-font-manifest.json +1 -0
- package/website/out/server/pages-manifest.json +1 -0
- package/website/out/server/server-reference-manifest.js +1 -0
- package/website/out/server/server-reference-manifest.json +5 -0
- package/website/out/static/chunks/polyfills.js +1 -0
- package/website/out/static/development/_buildManifest.js +1 -0
- package/website/out/static/development/_ssgManifest.js +1 -0
- package/website/out/trace +2 -0
- package/website/out/types/cache-life.d.ts +141 -0
- package/website/out/types/package.json +1 -0
- package/website/out/types/routes.d.ts +85 -0
- package/website/out/types/validator.ts +187 -0
- package/website/public/examples.json +476 -0
- package/website/public/schemas/openapi-extensions.schema.json +486 -0
- package/website/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Agent-First Policy Enforcement
|
|
3
|
+
# Prevents token waste by encouraging agent usage
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
BUILDKIT_CONFIG=".buildkit/branching-workflow.json"
|
|
8
|
+
TOKEN_THRESHOLD=500
|
|
9
|
+
|
|
10
|
+
# Check if task should use agents
|
|
11
|
+
check_agent_first_policy() {
|
|
12
|
+
local task_description="$1"
|
|
13
|
+
local estimated_tokens="$2"
|
|
14
|
+
|
|
15
|
+
echo "š Analyzing task: $task_description"
|
|
16
|
+
echo "š Estimated tokens: $estimated_tokens"
|
|
17
|
+
|
|
18
|
+
if [ "$estimated_tokens" -gt "$TOKEN_THRESHOLD" ]; then
|
|
19
|
+
echo "ā ļø LARGE TASK DETECTED (>$TOKEN_THRESHOLD tokens)"
|
|
20
|
+
echo "š” Recommendation: Use agents to prevent token waste"
|
|
21
|
+
echo ""
|
|
22
|
+
echo "Suggested commands:"
|
|
23
|
+
echo " buildkit agents list --search '$task_description'"
|
|
24
|
+
echo " buildkit agents spawn --type worker --task '$task_description'"
|
|
25
|
+
echo " buildkit agents coordinate --multi-agent"
|
|
26
|
+
echo ""
|
|
27
|
+
read -p "Continue with manual implementation? (y/N): " -n 1 -r
|
|
28
|
+
echo
|
|
29
|
+
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
30
|
+
echo "ā
Good choice! Use agents for better token efficiency."
|
|
31
|
+
exit 1
|
|
32
|
+
fi
|
|
33
|
+
echo "ā ļø Proceeding with manual implementation (token inefficient)"
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
# Check for repetitive patterns
|
|
37
|
+
if echo "$task_description" | grep -i -E "(multi-file|database|api.*integration|test.*generation|deployment|refactor)" >/dev/null; then
|
|
38
|
+
echo "š¤ AGENT-RECOMMENDED: This task type benefits from agent automation"
|
|
39
|
+
echo " Consider: buildkit agents spawn --type $(echo "$task_description" | head -c 20)"
|
|
40
|
+
fi
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
# Token optimization suggestions
|
|
44
|
+
optimize_tokens() {
|
|
45
|
+
echo "š° TOKEN OPTIMIZATION ACTIVE"
|
|
46
|
+
echo ""
|
|
47
|
+
echo "Available agent commands:"
|
|
48
|
+
echo " buildkit agents list - Show available agents"
|
|
49
|
+
echo " buildkit agents spawn - Create task-specific agent"
|
|
50
|
+
echo " buildkit agents coordinate - Multi-agent workflows"
|
|
51
|
+
echo " buildkit agents status - Check agent availability"
|
|
52
|
+
echo ""
|
|
53
|
+
echo "šÆ Remember: Agents prevent token waste on complex tasks!"
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
# Main execution
|
|
57
|
+
if [ "$1" = "--check" ]; then
|
|
58
|
+
check_agent_first_policy "$2" "$3"
|
|
59
|
+
elif [ "$1" = "--optimize" ]; then
|
|
60
|
+
optimize_tokens
|
|
61
|
+
else
|
|
62
|
+
echo "Agent-First Policy Enforcement"
|
|
63
|
+
echo "Usage: $0 --check 'task description' estimated_tokens"
|
|
64
|
+
echo " $0 --optimize"
|
|
65
|
+
fi
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "1.0.0",
|
|
3
|
+
"enabled": true,
|
|
4
|
+
"workflow": {
|
|
5
|
+
"feature_branches_only": true,
|
|
6
|
+
"ci_driven_development": true,
|
|
7
|
+
"no_direct_development_commits": true,
|
|
8
|
+
"main_branch_protection": true
|
|
9
|
+
},
|
|
10
|
+
"branch_naming": {
|
|
11
|
+
"patterns": {
|
|
12
|
+
"feature": "feature/<scope-kebab-case>",
|
|
13
|
+
"fix": "fix/<scope-kebab-case>",
|
|
14
|
+
"chore": "chore/<scope-kebab-case>",
|
|
15
|
+
"bot": "bot/<agent-name>/<task>"
|
|
16
|
+
},
|
|
17
|
+
"validation": {
|
|
18
|
+
"enforce_naming": true,
|
|
19
|
+
"reject_version_numbers": true,
|
|
20
|
+
"require_kebab_case": true
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"ci_rules": {
|
|
24
|
+
"target_branch": "development",
|
|
25
|
+
"require_approval": true,
|
|
26
|
+
"auto_fast_forward": true,
|
|
27
|
+
"pipeline_success_required": true
|
|
28
|
+
},
|
|
29
|
+
"protection": {
|
|
30
|
+
"block_direct_development_push": true,
|
|
31
|
+
"block_direct_main_push": true,
|
|
32
|
+
"quarantine_deleted_branches": true,
|
|
33
|
+
"backup_on_conflicts": true
|
|
34
|
+
},
|
|
35
|
+
"token_optimization": {
|
|
36
|
+
"agent_first_policy": true,
|
|
37
|
+
"prevent_manual_coding_over_500_tokens": true,
|
|
38
|
+
"require_agent_justification": true,
|
|
39
|
+
"track_token_usage": true
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# PreToolUse Hooks Configuration - Agent BuildKit
|
|
2
|
+
enabled: true
|
|
3
|
+
environment: development
|
|
4
|
+
compliance: [SOC2]
|
|
5
|
+
registered_hooks:
|
|
6
|
+
- name: command-validation
|
|
7
|
+
class: CommandValidationHook
|
|
8
|
+
module: security/CommandValidationHook
|
|
9
|
+
priority: 100
|
|
10
|
+
enabled: true
|
|
11
|
+
hooks:
|
|
12
|
+
security:
|
|
13
|
+
enabled: true
|
|
14
|
+
priority: 100
|
|
15
|
+
config:
|
|
16
|
+
maxCommandLength: 1000
|
|
17
|
+
allowedDirectories: [/tmp, /Users/flux423/Sites/LLM/OSSA]
|
|
18
|
+
blockedDirectories: [/etc, /sys, /proc]
|
|
19
|
+
blockedCommands: [rm, dd, format]
|
|
20
|
+
blockedPatterns: ["rm -rf /", "sudo rm", "chmod 777"]
|
|
21
|
+
audit:
|
|
22
|
+
enabled: true
|
|
23
|
+
logLevel: info
|
|
@@ -0,0 +1,483 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Enhanced BuildKit Setup Installation for OSSA
|
|
5
|
+
* Installs comprehensive branching workflow and token optimization
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
const fs = require('fs');
|
|
9
|
+
const path = require('path');
|
|
10
|
+
const { execSync } = require('child_process');
|
|
11
|
+
|
|
12
|
+
// Helper function to ensure directory exists
|
|
13
|
+
function ensureDirSync(dirPath) {
|
|
14
|
+
if (!fs.existsSync(dirPath)) {
|
|
15
|
+
fs.mkdirSync(dirPath, { recursive: true });
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// Helper function to write JSON
|
|
20
|
+
function writeJsonSync(filePath, data, options = {}) {
|
|
21
|
+
const spaces = options.spaces || 0;
|
|
22
|
+
fs.writeFileSync(filePath, JSON.stringify(data, null, spaces));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
console.log('š Installing Agent BuildKit Enhanced Setup on OSSA...\n');
|
|
26
|
+
|
|
27
|
+
const projectPath = process.cwd();
|
|
28
|
+
console.log(`š Project: ${path.basename(projectPath)}`);
|
|
29
|
+
|
|
30
|
+
try {
|
|
31
|
+
// 1. Create .buildkit directory
|
|
32
|
+
const buildkitDir = path.join(projectPath, '.buildkit');
|
|
33
|
+
ensureDirSync(buildkitDir);
|
|
34
|
+
console.log('ā
Created .buildkit directory');
|
|
35
|
+
|
|
36
|
+
// 2. Install branching workflow specification
|
|
37
|
+
console.log('šæ Installing branching & CI workflow enforcement...');
|
|
38
|
+
|
|
39
|
+
const branchingSpec = {
|
|
40
|
+
version: '1.0.0',
|
|
41
|
+
enabled: true,
|
|
42
|
+
workflow: {
|
|
43
|
+
feature_branches_only: true,
|
|
44
|
+
ci_driven_development: true,
|
|
45
|
+
no_direct_development_commits: true,
|
|
46
|
+
main_branch_protection: true
|
|
47
|
+
},
|
|
48
|
+
branch_naming: {
|
|
49
|
+
patterns: {
|
|
50
|
+
feature: 'feature/<scope-kebab-case>',
|
|
51
|
+
fix: 'fix/<scope-kebab-case>',
|
|
52
|
+
chore: 'chore/<scope-kebab-case>',
|
|
53
|
+
bot: 'bot/<agent-name>/<task>'
|
|
54
|
+
},
|
|
55
|
+
validation: {
|
|
56
|
+
enforce_naming: true,
|
|
57
|
+
reject_version_numbers: true,
|
|
58
|
+
require_kebab_case: true
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
ci_rules: {
|
|
62
|
+
target_branch: 'development',
|
|
63
|
+
require_approval: true,
|
|
64
|
+
auto_fast_forward: true,
|
|
65
|
+
pipeline_success_required: true
|
|
66
|
+
},
|
|
67
|
+
protection: {
|
|
68
|
+
block_direct_development_push: true,
|
|
69
|
+
block_direct_main_push: true,
|
|
70
|
+
quarantine_deleted_branches: true,
|
|
71
|
+
backup_on_conflicts: true
|
|
72
|
+
},
|
|
73
|
+
token_optimization: {
|
|
74
|
+
agent_first_policy: true,
|
|
75
|
+
prevent_manual_coding_over_500_tokens: true,
|
|
76
|
+
require_agent_justification: true,
|
|
77
|
+
track_token_usage: true
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
writeJsonSync(
|
|
82
|
+
path.join(buildkitDir, 'branching-workflow.json'),
|
|
83
|
+
branchingSpec,
|
|
84
|
+
{ spaces: 2 }
|
|
85
|
+
);
|
|
86
|
+
console.log('ā
Installed branching workflow specification');
|
|
87
|
+
|
|
88
|
+
// 3. Install GitLab CI template with golden workflow
|
|
89
|
+
console.log('šļø Installing GitLab CI with golden workflow integration...');
|
|
90
|
+
|
|
91
|
+
const gitlabCITemplate = `# GitLab CI - Agent BuildKit Enhanced Pipeline
|
|
92
|
+
# Uses golden workflow component for enterprise-grade CI/CD
|
|
93
|
+
|
|
94
|
+
include:
|
|
95
|
+
- component: gitlab.bluefly.io/llm/gitlab_components/workflow/golden@v0.1.0
|
|
96
|
+
inputs:
|
|
97
|
+
project_name: "\${CI_PROJECT_NAME}"
|
|
98
|
+
enable_auto_flow: true
|
|
99
|
+
enable_comprehensive_testing: true
|
|
100
|
+
enable_security_scanning: true
|
|
101
|
+
test_coverage_threshold: 80
|
|
102
|
+
enable_agent_buildkit_validation: true
|
|
103
|
+
branch_protection_enabled: true
|
|
104
|
+
|
|
105
|
+
variables:
|
|
106
|
+
# Agent BuildKit Configuration
|
|
107
|
+
BUILDKIT_ENABLED: "true"
|
|
108
|
+
BUILDKIT_TOKEN_OPTIMIZATION: "true"
|
|
109
|
+
BUILDKIT_BRANCH_ENFORCEMENT: "true"
|
|
110
|
+
|
|
111
|
+
# Branch Protection
|
|
112
|
+
DEVELOPMENT_BRANCH_PROTECTED: "true"
|
|
113
|
+
MAIN_BRANCH_PROTECTED: "true"
|
|
114
|
+
FEATURE_BRANCH_REQUIRED: "true"
|
|
115
|
+
|
|
116
|
+
stages:
|
|
117
|
+
- validate
|
|
118
|
+
- test
|
|
119
|
+
- security
|
|
120
|
+
- build
|
|
121
|
+
- deploy
|
|
122
|
+
|
|
123
|
+
# Agent BuildKit Branch Validation
|
|
124
|
+
buildkit:branch-validation:
|
|
125
|
+
stage: validate
|
|
126
|
+
image: node:18-alpine
|
|
127
|
+
script:
|
|
128
|
+
- npm install -g @bluefly/agent-build-kit
|
|
129
|
+
- buildkit hooks validate git "branch --show-current"
|
|
130
|
+
- |
|
|
131
|
+
BRANCH=$(git branch --show-current)
|
|
132
|
+
case "$BRANCH" in
|
|
133
|
+
feature/*|fix/*|chore/*|bot/*)
|
|
134
|
+
echo "ā
Valid branch naming: $BRANCH"
|
|
135
|
+
;;
|
|
136
|
+
development|main)
|
|
137
|
+
echo "ā Direct work on $BRANCH is not allowed"
|
|
138
|
+
exit 1
|
|
139
|
+
;;
|
|
140
|
+
*)
|
|
141
|
+
echo "ā Invalid branch naming: $BRANCH"
|
|
142
|
+
echo "ā¹ļø Use: feature/<scope>, fix/<scope>, chore/<scope>, or bot/<agent>/<task>"
|
|
143
|
+
exit 1
|
|
144
|
+
;;
|
|
145
|
+
esac
|
|
146
|
+
rules:
|
|
147
|
+
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
|
148
|
+
- if: $CI_COMMIT_BRANCH != "main" && $CI_COMMIT_BRANCH != "development"
|
|
149
|
+
|
|
150
|
+
# Token Optimization Check
|
|
151
|
+
buildkit:token-optimization:
|
|
152
|
+
stage: validate
|
|
153
|
+
image: node:18-alpine
|
|
154
|
+
script:
|
|
155
|
+
- npm install -g @bluefly/agent-build-kit
|
|
156
|
+
- buildkit agents list --check-availability
|
|
157
|
+
- echo "š¤ Verifying agent-first policy compliance"
|
|
158
|
+
- |
|
|
159
|
+
# Check if large changes should use agents instead
|
|
160
|
+
CHANGED_LINES=$(git diff --stat HEAD~1 | tail -1 | grep -o '[0-9]\\+ insertions' | grep -o '[0-9]\\+' || echo "0")
|
|
161
|
+
if [ "$CHANGED_LINES" -gt 500 ]; then
|
|
162
|
+
echo "ā ļø Large changeset detected ($CHANGED_LINES lines)"
|
|
163
|
+
echo "š” Consider using buildkit agents for token optimization"
|
|
164
|
+
echo " Run: buildkit agents spawn --type worker --task 'large-refactor'"
|
|
165
|
+
fi
|
|
166
|
+
allow_failure: true
|
|
167
|
+
rules:
|
|
168
|
+
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
|
169
|
+
|
|
170
|
+
# Prevent AI Attribution in Commits
|
|
171
|
+
buildkit:employment-protection:
|
|
172
|
+
stage: validate
|
|
173
|
+
image: alpine/git
|
|
174
|
+
script:
|
|
175
|
+
- |
|
|
176
|
+
echo "š Checking commits for AI attribution..."
|
|
177
|
+
if git log --oneline -10 | grep -i -E "(claude|š¤|generated.*with|anthropic)"; then
|
|
178
|
+
echo "ā AI attribution detected in commit messages"
|
|
179
|
+
echo "šØ EMPLOYMENT RISK: Remove AI references from commit history"
|
|
180
|
+
exit 1
|
|
181
|
+
fi
|
|
182
|
+
echo "ā
No AI attribution found"
|
|
183
|
+
rules:
|
|
184
|
+
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
|
185
|
+
`;
|
|
186
|
+
|
|
187
|
+
fs.writeFileSync(path.join(projectPath, '.gitlab-ci.yml'), gitlabCITemplate);
|
|
188
|
+
console.log('ā
Installed GitLab CI with golden workflow integration');
|
|
189
|
+
|
|
190
|
+
// 4. Create agent-first policy enforcement script
|
|
191
|
+
console.log('š¤ Installing agent-first policy enforcement...');
|
|
192
|
+
|
|
193
|
+
const agentFirstScript = `#!/bin/bash
|
|
194
|
+
# Agent-First Policy Enforcement
|
|
195
|
+
# Prevents token waste by encouraging agent usage
|
|
196
|
+
|
|
197
|
+
set -e
|
|
198
|
+
|
|
199
|
+
BUILDKIT_CONFIG=".buildkit/branching-workflow.json"
|
|
200
|
+
TOKEN_THRESHOLD=500
|
|
201
|
+
|
|
202
|
+
# Check if task should use agents
|
|
203
|
+
check_agent_first_policy() {
|
|
204
|
+
local task_description="$1"
|
|
205
|
+
local estimated_tokens="$2"
|
|
206
|
+
|
|
207
|
+
echo "š Analyzing task: $task_description"
|
|
208
|
+
echo "š Estimated tokens: $estimated_tokens"
|
|
209
|
+
|
|
210
|
+
if [ "$estimated_tokens" -gt "$TOKEN_THRESHOLD" ]; then
|
|
211
|
+
echo "ā ļø LARGE TASK DETECTED (>$TOKEN_THRESHOLD tokens)"
|
|
212
|
+
echo "š” Recommendation: Use agents to prevent token waste"
|
|
213
|
+
echo ""
|
|
214
|
+
echo "Suggested commands:"
|
|
215
|
+
echo " buildkit agents list --search '$task_description'"
|
|
216
|
+
echo " buildkit agents spawn --type worker --task '$task_description'"
|
|
217
|
+
echo " buildkit agents coordinate --multi-agent"
|
|
218
|
+
echo ""
|
|
219
|
+
read -p "Continue with manual implementation? (y/N): " -n 1 -r
|
|
220
|
+
echo
|
|
221
|
+
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
222
|
+
echo "ā
Good choice! Use agents for better token efficiency."
|
|
223
|
+
exit 1
|
|
224
|
+
fi
|
|
225
|
+
echo "ā ļø Proceeding with manual implementation (token inefficient)"
|
|
226
|
+
fi
|
|
227
|
+
|
|
228
|
+
# Check for repetitive patterns
|
|
229
|
+
if echo "$task_description" | grep -i -E "(multi-file|database|api.*integration|test.*generation|deployment|refactor)" >/dev/null; then
|
|
230
|
+
echo "š¤ AGENT-RECOMMENDED: This task type benefits from agent automation"
|
|
231
|
+
echo " Consider: buildkit agents spawn --type $(echo "$task_description" | head -c 20)"
|
|
232
|
+
fi
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
# Token optimization suggestions
|
|
236
|
+
optimize_tokens() {
|
|
237
|
+
echo "š° TOKEN OPTIMIZATION ACTIVE"
|
|
238
|
+
echo ""
|
|
239
|
+
echo "Available agent commands:"
|
|
240
|
+
echo " buildkit agents list - Show available agents"
|
|
241
|
+
echo " buildkit agents spawn - Create task-specific agent"
|
|
242
|
+
echo " buildkit agents coordinate - Multi-agent workflows"
|
|
243
|
+
echo " buildkit agents status - Check agent availability"
|
|
244
|
+
echo ""
|
|
245
|
+
echo "šÆ Remember: Agents prevent token waste on complex tasks!"
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
# Main execution
|
|
249
|
+
if [ "$1" = "--check" ]; then
|
|
250
|
+
check_agent_first_policy "$2" "$3"
|
|
251
|
+
elif [ "$1" = "--optimize" ]; then
|
|
252
|
+
optimize_tokens
|
|
253
|
+
else
|
|
254
|
+
echo "Agent-First Policy Enforcement"
|
|
255
|
+
echo "Usage: $0 --check 'task description' estimated_tokens"
|
|
256
|
+
echo " $0 --optimize"
|
|
257
|
+
fi
|
|
258
|
+
`;
|
|
259
|
+
|
|
260
|
+
fs.writeFileSync(path.join(buildkitDir, 'agent-first-policy.sh'), agentFirstScript);
|
|
261
|
+
fs.chmodSync(path.join(buildkitDir, 'agent-first-policy.sh'), '755');
|
|
262
|
+
console.log('ā
Installed agent-first policy enforcement script');
|
|
263
|
+
|
|
264
|
+
// 5. Install enhanced lefthook.yml with employment protection
|
|
265
|
+
console.log('š”ļø Installing employment protection (lefthook.yml)...');
|
|
266
|
+
|
|
267
|
+
const lefthookConfig = `# GitHook Management - Agent BuildKit Employment Protection
|
|
268
|
+
pre-push:
|
|
269
|
+
commands:
|
|
270
|
+
block-claude-on-development:
|
|
271
|
+
run: |
|
|
272
|
+
BRANCH=$(git branch --show-current)
|
|
273
|
+
if [ "$BRANCH" = "development" ]; then
|
|
274
|
+
echo "ā BLOCKED: Claude Code is not allowed to push to development branch"
|
|
275
|
+
echo "šØ EMPLOYMENT PROTECTION: Development branch is for human developers only"
|
|
276
|
+
echo "ā¹ļø Use: git checkout -b feature/your-feature"
|
|
277
|
+
exit 1
|
|
278
|
+
fi
|
|
279
|
+
|
|
280
|
+
commit-msg:
|
|
281
|
+
commands:
|
|
282
|
+
block-claude-attribution:
|
|
283
|
+
run: |
|
|
284
|
+
MSG_FILE={1}
|
|
285
|
+
if grep -i -E "(claude|š¤|generated with.*claude|co-authored-by.*claude|anthropic)" "$MSG_FILE"; then
|
|
286
|
+
echo "ā COMMIT REJECTED: Claude/AI attribution detected"
|
|
287
|
+
echo "šØ EMPLOYMENT RISK: Commits must appear to be from human developers"
|
|
288
|
+
echo "ā¹ļø Remove AI attribution and commit as yourself"
|
|
289
|
+
exit 1
|
|
290
|
+
fi
|
|
291
|
+
|
|
292
|
+
pre-commit:
|
|
293
|
+
commands:
|
|
294
|
+
prevent-ai-signatures:
|
|
295
|
+
run: |
|
|
296
|
+
if git diff --cached | grep -i -E "(generated.*claude|ai.*generated|anthropic|claude.*code)"; then
|
|
297
|
+
echo "ā COMMIT BLOCKED: AI signature detected in code"
|
|
298
|
+
echo "šØ EMPLOYMENT PROTECTION: Remove AI references from code"
|
|
299
|
+
exit 1
|
|
300
|
+
fi
|
|
301
|
+
`;
|
|
302
|
+
|
|
303
|
+
fs.writeFileSync(path.join(projectPath, 'lefthook.yml'), lefthookConfig);
|
|
304
|
+
console.log('ā
Installed branch protection (lefthook.yml)');
|
|
305
|
+
|
|
306
|
+
// 6. Create comprehensive CLAUDE.md with workflow specification
|
|
307
|
+
console.log('š Creating comprehensive CLAUDE.md with workflow specification...');
|
|
308
|
+
|
|
309
|
+
const claudeConfig = `# CLAUDE.md - OSSA Project Configuration
|
|
310
|
+
|
|
311
|
+
## šØ CRITICAL: Branching & CI Workflow Specification
|
|
312
|
+
|
|
313
|
+
### 1. Feature Branches Only (MANDATORY)
|
|
314
|
+
- All new work must start from the latest \`development\` branch
|
|
315
|
+
- Branch names use the format:
|
|
316
|
+
- \`feature/<scope-kebab-case>\` for new capabilities
|
|
317
|
+
- \`fix/<scope-kebab-case>\` for bug fixes
|
|
318
|
+
- \`chore/<scope-kebab-case>\` for non-feature work (docs, refactors, CI config)
|
|
319
|
+
- \`bot/<agent-name>/<task>\` for AI bot work
|
|
320
|
+
|
|
321
|
+
### 2. CI-Driven Development Branch (ENFORCED)
|
|
322
|
+
- Merge requests target \`development\`, never \`main\` directly
|
|
323
|
+
- CI/CD enforces: linting, type checks, tests, coverage thresholds
|
|
324
|
+
- Approval requirements defined in CODEOWNERS
|
|
325
|
+
- Automatic fast-forward merge after approval and pipeline success
|
|
326
|
+
- **No manual merges to development are allowed. Only CI merges.**
|
|
327
|
+
|
|
328
|
+
### 3. AI Bots Sync from Development
|
|
329
|
+
- Bots always pull from \`development\` before creating new branches
|
|
330
|
+
- Bot branches follow naming convention: \`bot/<agent-name>/<task>\`
|
|
331
|
+
- CI ensures bot-created branches are isolated and only merged via standard MR flow
|
|
332
|
+
|
|
333
|
+
### 4. No Direct Development Commits (BLOCKED)
|
|
334
|
+
- Direct pushes to \`development\` are blocked at Git server level
|
|
335
|
+
- Developers must create feature/fix branches and submit merge requests
|
|
336
|
+
- Development is managed exclusively through automation and CI
|
|
337
|
+
|
|
338
|
+
### 5. Main Branch Protection (AUTOMATED)
|
|
339
|
+
- \`main\` only accepts merges from \`development\` via release workflow
|
|
340
|
+
- Releases follow semantic versioning:
|
|
341
|
+
- \`feat:\` ā minor version bump
|
|
342
|
+
- \`fix:\` ā patch version bump
|
|
343
|
+
- \`BREAKING CHANGE:\` ā major version bump
|
|
344
|
+
- \`main\` is always deployable and tagged automatically with semantic-release
|
|
345
|
+
|
|
346
|
+
### 6. Safety & Recovery Rules (AUTOMATIC)
|
|
347
|
+
- Backup branches auto-created by CI on merge conflicts or failed automations
|
|
348
|
+
- Deleted branches quarantined to \`__DELETE_LATER/\` until cleanup job runs
|
|
349
|
+
|
|
350
|
+
## š° TOKEN OPTIMIZATION (MANDATORY)
|
|
351
|
+
|
|
352
|
+
### Agent-First Policy - STOP WASTING TOKENS
|
|
353
|
+
Before writing ANY code, you MUST check for agents:
|
|
354
|
+
|
|
355
|
+
\`\`\`bash
|
|
356
|
+
# Step 1: MANDATORY token estimation
|
|
357
|
+
echo "Task: [description]"
|
|
358
|
+
echo "Estimated tokens: [amount]"
|
|
359
|
+
echo "Is this > 500 tokens? [yes/no]"
|
|
360
|
+
echo "Is this repetitive? [yes/no]"
|
|
361
|
+
|
|
362
|
+
# Step 2: MANDATORY agent check
|
|
363
|
+
buildkit agents list
|
|
364
|
+
buildkit agents search --tag [keyword]
|
|
365
|
+
buildkit agents search --description "[task-description]"
|
|
366
|
+
|
|
367
|
+
# Step 3: Decision matrix
|
|
368
|
+
if [estimated_tokens > 500] || [is_repetitive]; then
|
|
369
|
+
echo "MUST use agents - token waste prevention"
|
|
370
|
+
buildkit agents spawn --type worker --task "[description]"
|
|
371
|
+
else
|
|
372
|
+
echo "Manual coding approved - justification: [reason]"
|
|
373
|
+
fi
|
|
374
|
+
\`\`\`
|
|
375
|
+
|
|
376
|
+
### MANDATORY Agent Spawning for These Tasks:
|
|
377
|
+
- **Multi-file operations** (3+ files) ā ALWAYS spawn agents
|
|
378
|
+
- **Database operations** ā ALWAYS use database agents
|
|
379
|
+
- **API integrations** ā ALWAYS use integration agents
|
|
380
|
+
- **Testing workflows** ā ALWAYS use test agents
|
|
381
|
+
- **Deployment tasks** ā ALWAYS use deployment agents
|
|
382
|
+
- **Documentation generation** ā ALWAYS use doc agents
|
|
383
|
+
- **Code analysis** (linting, security) ā ALWAYS use analysis agents
|
|
384
|
+
- **Refactoring tasks** ā ALWAYS use refactoring agents
|
|
385
|
+
|
|
386
|
+
### Token Waste Prevention Rules:
|
|
387
|
+
- ā **NEVER manually code tasks > 500 tokens without checking agents**
|
|
388
|
+
- ā **NEVER repeat similar tasks without creating/using agents**
|
|
389
|
+
- ā **NEVER ignore existing agent capabilities**
|
|
390
|
+
- ā **NEVER write multi-step workflows manually**
|
|
391
|
+
- ā **NEVER generate boilerplate code manually**
|
|
392
|
+
|
|
393
|
+
## š”ļø EMPLOYMENT PROTECTION ACTIVE
|
|
394
|
+
|
|
395
|
+
### Critical Restrictions:
|
|
396
|
+
- **Claude Code is BLOCKED from development branch**
|
|
397
|
+
- **All AI assistants must work on feature branches only**
|
|
398
|
+
- **Commits must NOT contain AI attribution**
|
|
399
|
+
- **No Claude/Anthropic references in code or commits**
|
|
400
|
+
|
|
401
|
+
### Required Workflow:
|
|
402
|
+
\`\`\`bash
|
|
403
|
+
# ALWAYS start from development
|
|
404
|
+
git checkout development
|
|
405
|
+
git pull origin development
|
|
406
|
+
|
|
407
|
+
# Create feature branch (REQUIRED)
|
|
408
|
+
git checkout -b feature/your-description
|
|
409
|
+
|
|
410
|
+
# Work on feature branch only
|
|
411
|
+
# ... make changes ...
|
|
412
|
+
|
|
413
|
+
# Commit as human developer (NO AI attribution)
|
|
414
|
+
git commit -m "feat: implement new feature"
|
|
415
|
+
|
|
416
|
+
# Push feature branch
|
|
417
|
+
git push origin feature/your-description
|
|
418
|
+
\`\`\`
|
|
419
|
+
|
|
420
|
+
### Blocked Actions:
|
|
421
|
+
- ā Direct work on development branch
|
|
422
|
+
- ā AI attribution in commits (\`š¤ Generated with Claude\`)
|
|
423
|
+
- ā Claude Code signatures in code
|
|
424
|
+
- ā Anthropic references in commits
|
|
425
|
+
- ā Co-authored-by Claude entries
|
|
426
|
+
|
|
427
|
+
## šÆ Success Criteria
|
|
428
|
+
|
|
429
|
+
An AI assistant is properly configured when:
|
|
430
|
+
- ā
Always checks agent-buildkit before manual coding
|
|
431
|
+
- ā
Uses correct branch naming patterns
|
|
432
|
+
- ā
Works only from development branch locally
|
|
433
|
+
- ā
Implements golden workflow CI/CD
|
|
434
|
+
- ā
Follows TDD and API-first principles
|
|
435
|
+
- ā
Never creates ad-hoc scripts outside agent-buildkit
|
|
436
|
+
|
|
437
|
+
Generated by Agent BuildKit Enhanced Setup
|
|
438
|
+
Protected by comprehensive governance system
|
|
439
|
+
`;
|
|
440
|
+
|
|
441
|
+
fs.writeFileSync(path.join(projectPath, 'CLAUDE.md'), claudeConfig);
|
|
442
|
+
console.log('ā
Created comprehensive CLAUDE.md with workflow specification');
|
|
443
|
+
|
|
444
|
+
// 7. Update .gitignore
|
|
445
|
+
const gitignorePath = path.join(projectPath, '.gitignore');
|
|
446
|
+
if (fs.existsSync(gitignorePath)) {
|
|
447
|
+
const gitignoreContent = fs.readFileSync(gitignorePath, 'utf8');
|
|
448
|
+
if (!gitignoreContent.includes('.buildkit/cache')) {
|
|
449
|
+
fs.appendFileSync(gitignorePath, '\n# Agent BuildKit\n.buildkit/cache/\n.buildkit/logs/\n');
|
|
450
|
+
console.log('ā
Updated .gitignore for Agent BuildKit');
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
// 8. Try to install lefthook if available
|
|
455
|
+
try {
|
|
456
|
+
console.log('š Attempting to install lefthook hooks...');
|
|
457
|
+
execSync('npx lefthook install', { stdio: 'ignore' });
|
|
458
|
+
console.log('ā
Lefthook hooks activated');
|
|
459
|
+
} catch {
|
|
460
|
+
console.log('ā ļø Lefthook not available - install with: npm install -g lefthook');
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
// Final summary
|
|
464
|
+
console.log('\nš Installation Summary:');
|
|
465
|
+
console.log(' ā
Branching workflow specification installed');
|
|
466
|
+
console.log(' ā
GitLab CI golden workflow template installed');
|
|
467
|
+
console.log(' ā
Agent-first policy enforcement installed');
|
|
468
|
+
console.log(' ā
Employment protection activated');
|
|
469
|
+
console.log(' ā
Comprehensive CLAUDE.md created');
|
|
470
|
+
console.log(' ā
Token optimization enabled');
|
|
471
|
+
|
|
472
|
+
console.log('\nš¤ Token Optimization Enabled:');
|
|
473
|
+
console.log(' ⢠Use "buildkit agents list" to check available agents');
|
|
474
|
+
console.log(' ⢠Use "buildkit agents spawn" for complex tasks');
|
|
475
|
+
console.log(' ⢠Agent-first policy prevents token waste');
|
|
476
|
+
console.log(' ⢠Branching workflow enforces CI-driven development');
|
|
477
|
+
|
|
478
|
+
console.log('\nš Agent BuildKit Enhanced Setup complete! Ready for enterprise development.');
|
|
479
|
+
|
|
480
|
+
} catch (error) {
|
|
481
|
+
console.error('ā Setup failed:', error.message);
|
|
482
|
+
process.exit(1);
|
|
483
|
+
}
|