atabey 0.0.37 → 0.1.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/ATABEY.md +1 -1
- package/PRIVACY.md +2 -2
- package/README.md +58 -46
- package/bin/completion.sh +1 -1
- package/dist/atabey/src/cli/commands/api.d.ts +1 -0
- package/dist/atabey/src/cli/commands/api.js +90 -0
- package/dist/atabey/src/cli/commands/api.js.map +1 -0
- package/dist/atabey/src/cli/commands/audit.d.ts +9 -0
- package/dist/atabey/src/cli/commands/audit.js +73 -0
- package/dist/atabey/src/cli/commands/audit.js.map +1 -0
- package/dist/atabey/src/cli/commands/check.js +15 -6
- package/dist/atabey/src/cli/commands/check.js.map +1 -1
- package/dist/atabey/src/cli/commands/contract.js +51 -8
- package/dist/atabey/src/cli/commands/contract.js.map +1 -1
- package/dist/atabey/src/cli/commands/coverage.js +17 -12
- package/dist/atabey/src/cli/commands/coverage.js.map +1 -1
- package/dist/atabey/src/cli/commands/dashboard.js +101 -16
- package/dist/atabey/src/cli/commands/dashboard.js.map +1 -1
- package/dist/atabey/src/cli/commands/db.d.ts +1 -0
- package/dist/atabey/src/cli/commands/db.js +58 -0
- package/dist/atabey/src/cli/commands/db.js.map +1 -0
- package/dist/atabey/src/cli/commands/hitl.js +2 -1
- package/dist/atabey/src/cli/commands/hitl.js.map +1 -1
- package/dist/atabey/src/cli/commands/index-codebase.js +10 -0
- package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-app.js +82 -7
- package/dist/atabey/src/cli/commands/init/scaffold-app.js.map +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-core.js +3 -3
- package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-docs.js +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-ops.js +47 -7
- package/dist/atabey/src/cli/commands/init/scaffold-ops.js.map +1 -1
- package/dist/atabey/src/cli/commands/init/scaffold-standards.js +8 -15
- package/dist/atabey/src/cli/commands/init/scaffold-standards.js.map +1 -1
- package/dist/atabey/src/cli/commands/init.js +28 -62
- package/dist/atabey/src/cli/commands/init.js.map +1 -1
- package/dist/atabey/src/cli/commands/lint.d.ts +2 -1
- package/dist/atabey/src/cli/commands/lint.js +20 -1
- package/dist/atabey/src/cli/commands/lint.js.map +1 -1
- package/dist/atabey/src/cli/commands/mcp.js +71 -33
- package/dist/atabey/src/cli/commands/mcp.js.map +1 -1
- package/dist/atabey/src/cli/commands/orchestrate.d.ts +4 -4
- package/dist/atabey/src/cli/commands/orchestrate.js +1 -1
- package/dist/atabey/src/cli/commands/orchestrate.js.map +1 -1
- package/dist/atabey/src/cli/commands/plan.d.ts +1 -1
- package/dist/atabey/src/cli/commands/plan.js +10 -0
- package/dist/atabey/src/cli/commands/plan.js.map +1 -1
- package/dist/atabey/src/cli/commands/quickstart.js +1 -1
- package/dist/atabey/src/cli/commands/quickstart.js.map +1 -1
- package/dist/atabey/src/cli/commands/script.js +4 -0
- package/dist/atabey/src/cli/commands/script.js.map +1 -1
- package/dist/atabey/src/cli/commands/secrets.d.ts +1 -0
- package/dist/atabey/src/cli/commands/secrets.js +146 -0
- package/dist/atabey/src/cli/commands/secrets.js.map +1 -0
- package/dist/atabey/src/cli/commands/worktree.d.ts +10 -0
- package/dist/atabey/src/cli/commands/worktree.js +90 -0
- package/dist/atabey/src/cli/commands/worktree.js.map +1 -0
- package/dist/atabey/src/cli/index.js +75 -16
- package/dist/atabey/src/cli/index.js.map +1 -1
- package/dist/atabey/src/cli/platforms/core.d.ts +0 -1
- package/dist/atabey/src/cli/platforms/core.js +0 -14
- package/dist/atabey/src/cli/platforms/core.js.map +1 -1
- package/dist/atabey/src/cli/platforms/index.d.ts +2 -2
- package/dist/atabey/src/cli/platforms/index.js +1 -1
- package/dist/atabey/src/cli/platforms/index.js.map +1 -1
- package/dist/atabey/src/cli/platforms/paths.d.ts +0 -2
- package/dist/atabey/src/cli/platforms/paths.js +1 -8
- package/dist/atabey/src/cli/platforms/paths.js.map +1 -1
- package/dist/atabey/src/cli/platforms/scaffold.js +1 -1
- package/dist/atabey/src/cli/platforms/scaffold.js.map +1 -1
- package/dist/atabey/src/cli/utils/claude.js +6 -0
- package/dist/atabey/src/cli/utils/claude.js.map +1 -1
- package/dist/atabey/src/cli/utils/compliance.d.ts +1 -1
- package/dist/atabey/src/cli/utils/compliance.js +33 -20
- package/dist/atabey/src/cli/utils/compliance.js.map +1 -1
- package/dist/atabey/src/cli/utils/fs.js +1 -1
- package/dist/atabey/src/cli/utils/fs.js.map +1 -1
- package/dist/atabey/src/cli/utils/i18n.js +2 -2
- package/dist/atabey/src/cli/utils/i18n.js.map +1 -1
- package/dist/atabey/src/cli/utils/memory.js +27 -16
- package/dist/atabey/src/cli/utils/memory.js.map +1 -1
- package/dist/atabey/src/cli/utils/pkg.js +5 -2
- package/dist/atabey/src/cli/utils/pkg.js.map +1 -1
- package/dist/atabey/src/cli/utils/quality.d.ts +1 -1
- package/dist/atabey/src/cli/utils/ui.d.ts +1 -1
- package/dist/atabey/src/cli/utils/ui.js +1 -1
- package/dist/atabey/src/modules/agents/definitions.d.ts +1 -1
- package/dist/atabey/src/modules/agents/definitions.js +13 -9
- package/dist/atabey/src/modules/agents/definitions.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/analyst.js +0 -2
- package/dist/atabey/src/modules/agents/registry/analyst.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/architect.js +0 -2
- package/dist/atabey/src/modules/agents/registry/architect.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/backend.js +0 -2
- package/dist/atabey/src/modules/agents/registry/backend.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/database.js +0 -2
- package/dist/atabey/src/modules/agents/registry/database.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/devops.js +0 -2
- package/dist/atabey/src/modules/agents/registry/devops.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/explorer.js +0 -2
- package/dist/atabey/src/modules/agents/registry/explorer.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/frontend.js +0 -2
- package/dist/atabey/src/modules/agents/registry/frontend.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/git.js +0 -2
- package/dist/atabey/src/modules/agents/registry/git.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/manager.js +0 -3
- package/dist/atabey/src/modules/agents/registry/manager.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/mobile.js +0 -2
- package/dist/atabey/src/modules/agents/registry/mobile.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/native.js +0 -2
- package/dist/atabey/src/modules/agents/registry/native.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/quality.js +3 -5
- package/dist/atabey/src/modules/agents/registry/quality.js.map +1 -1
- package/dist/atabey/src/modules/agents/registry/security.js +0 -2
- package/dist/atabey/src/modules/agents/registry/security.js.map +1 -1
- package/dist/atabey/src/modules/agents/types.d.ts +0 -1
- package/dist/atabey/src/modules/audit/export.d.ts +22 -0
- package/dist/atabey/src/modules/audit/export.js +58 -0
- package/dist/atabey/src/modules/audit/export.js.map +1 -0
- package/dist/atabey/src/modules/contracts/api.d.ts +2 -2
- package/dist/atabey/src/modules/engines/agent-executor.js +37 -0
- package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -1
- package/dist/atabey/src/modules/engines/evaluation-engine.js +10 -0
- package/dist/atabey/src/modules/engines/evaluation-engine.js.map +1 -1
- package/dist/atabey/src/modules/engines/quality-gate.js +2 -2
- package/dist/atabey/src/modules/engines/quality-gate.js.map +1 -1
- package/dist/atabey/src/modules/engines/routing-engine.js +1 -1
- package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -1
- package/dist/atabey/src/modules/memory/code-graph.d.ts +44 -0
- package/dist/atabey/src/modules/memory/code-graph.js +180 -0
- package/dist/atabey/src/modules/memory/code-graph.js.map +1 -0
- package/dist/atabey/src/modules/memory/context-assembler.d.ts +50 -0
- package/dist/atabey/src/modules/memory/context-assembler.js +146 -0
- package/dist/atabey/src/modules/memory/context-assembler.js.map +1 -0
- package/dist/atabey/src/modules/providers/definitions.js +78 -41
- package/dist/atabey/src/modules/providers/definitions.js.map +1 -1
- package/dist/atabey/src/modules/providers/shared.d.ts +1 -1
- package/dist/atabey/src/modules/providers/shared.js +34 -15
- package/dist/atabey/src/modules/providers/shared.js.map +1 -1
- package/dist/atabey/src/modules/providers/types.d.ts +0 -4
- package/dist/atabey/src/modules/runtime/adapters/headless-cli.d.ts +35 -0
- package/dist/atabey/src/modules/runtime/adapters/headless-cli.js +115 -0
- package/dist/atabey/src/modules/runtime/adapters/headless-cli.js.map +1 -0
- package/dist/atabey/src/modules/runtime/adapters/index.d.ts +2 -0
- package/dist/atabey/src/modules/runtime/adapters/index.js +3 -0
- package/dist/atabey/src/modules/runtime/adapters/index.js.map +1 -0
- package/dist/atabey/src/modules/runtime/adapters/types.d.ts +48 -0
- package/dist/atabey/src/modules/runtime/adapters/types.js +12 -0
- package/dist/atabey/src/modules/runtime/adapters/types.js.map +1 -0
- package/dist/atabey/src/modules/runtime/agent-runtime.d.ts +54 -0
- package/dist/atabey/src/modules/runtime/agent-runtime.js +203 -0
- package/dist/atabey/src/modules/runtime/agent-runtime.js.map +1 -0
- package/dist/atabey/src/modules/runtime/dispatcher.d.ts +75 -0
- package/dist/atabey/src/modules/runtime/dispatcher.js +255 -0
- package/dist/atabey/src/modules/runtime/dispatcher.js.map +1 -0
- package/dist/atabey/src/modules/runtime/evidence.d.ts +39 -0
- package/dist/atabey/src/modules/runtime/evidence.js +53 -0
- package/dist/atabey/src/modules/runtime/evidence.js.map +1 -0
- package/dist/atabey/src/modules/runtime/worktree.d.ts +44 -0
- package/dist/atabey/src/modules/runtime/worktree.js +259 -0
- package/dist/atabey/src/modules/runtime/worktree.js.map +1 -0
- package/dist/atabey/src/modules/skills/adapter-skills.d.ts +0 -29
- package/dist/atabey/src/modules/skills/adapter-skills.js +0 -61
- package/dist/atabey/src/modules/skills/adapter-skills.js.map +1 -1
- package/dist/atabey/src/modules/skills/definitions.d.ts +1 -1
- package/dist/atabey/src/modules/skills/definitions.js +8 -8
- package/dist/atabey/src/schema/agent-lifecycle.d.ts +36 -0
- package/dist/atabey/src/schema/agent-lifecycle.js +96 -0
- package/dist/atabey/src/schema/agent-lifecycle.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/ast-scan.d.ts +21 -0
- package/dist/atabey-mcp/src/mcp/utils/ast-scan.js +64 -0
- package/dist/atabey-mcp/src/mcp/utils/ast-scan.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.d.ts +73 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.js +316 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/auto-rollback.d.ts +83 -0
- package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js +418 -0
- package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.d.ts +85 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js +296 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/discipline.d.ts +72 -0
- package/dist/atabey-mcp/src/mcp/utils/discipline.js +385 -0
- package/dist/atabey-mcp/src/mcp/utils/discipline.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/finops.d.ts +81 -0
- package/dist/atabey-mcp/src/mcp/utils/finops.js +274 -0
- package/dist/atabey-mcp/src/mcp/utils/finops.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/loop-detector.d.ts +106 -0
- package/dist/atabey-mcp/src/mcp/utils/loop-detector.js +419 -0
- package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/rules-engine.d.ts +80 -0
- package/dist/atabey-mcp/src/mcp/utils/rules-engine.js +296 -0
- package/dist/atabey-mcp/src/mcp/utils/rules-engine.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.d.ts +133 -0
- package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js +400 -0
- package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js.map +1 -0
- package/dist/atabey-mcp/src/shared/logger.d.ts +1 -0
- package/dist/atabey-mcp/src/shared/logger.js +2 -0
- package/dist/atabey-mcp/src/shared/logger.js.map +1 -0
- package/dist/atabey-mcp/src/shared/pii.d.ts +1 -0
- package/dist/atabey-mcp/src/shared/pii.js +2 -0
- package/dist/atabey-mcp/src/shared/pii.js.map +1 -0
- package/dist/atabey-mcp/src/shared/storage.d.ts +2 -0
- package/dist/atabey-mcp/src/shared/storage.js +3 -0
- package/dist/atabey-mcp/src/shared/storage.js.map +1 -0
- package/dist/shared/src/agent-identity.d.ts +1 -0
- package/dist/shared/src/agent-identity.js +2 -0
- package/dist/shared/src/agent-identity.js.map +1 -0
- package/dist/shared/src/api-catalog.d.ts +1 -0
- package/dist/shared/src/api-catalog.js +2 -0
- package/dist/shared/src/api-catalog.js.map +1 -0
- package/dist/shared/src/audit-chain.d.ts +1 -51
- package/dist/shared/src/audit-chain.js +1 -84
- package/dist/shared/src/audit-chain.js.map +1 -1
- package/dist/shared/src/audit.d.ts +1 -113
- package/dist/shared/src/audit.js +1 -284
- package/dist/shared/src/audit.js.map +1 -1
- package/dist/shared/src/constants.d.ts +1 -152
- package/dist/shared/src/constants.js +1 -215
- package/dist/shared/src/constants.js.map +1 -1
- package/dist/shared/src/database.d.ts +1 -5
- package/dist/shared/src/database.js +1 -12
- package/dist/shared/src/database.js.map +1 -1
- package/dist/shared/src/errors.d.ts +1 -46
- package/dist/shared/src/errors.js +1 -68
- package/dist/shared/src/errors.js.map +1 -1
- package/dist/shared/src/file-lock.d.ts +1 -88
- package/dist/shared/src/file-lock.js +1 -250
- package/dist/shared/src/file-lock.js.map +1 -1
- package/dist/shared/src/fs.d.ts +1 -9
- package/dist/shared/src/fs.js +1 -53
- package/dist/shared/src/fs.js.map +1 -1
- package/dist/shared/src/index.d.ts +2 -22
- package/dist/shared/src/index.js +2 -22
- package/dist/shared/src/index.js.map +1 -1
- package/dist/shared/src/job-queue.d.ts +1 -53
- package/dist/shared/src/job-queue.js +1 -126
- package/dist/shared/src/job-queue.js.map +1 -1
- package/dist/shared/src/lock.d.ts +1 -82
- package/dist/shared/src/lock.js +1 -158
- package/dist/shared/src/lock.js.map +1 -1
- package/dist/shared/src/logger.d.ts +1 -30
- package/dist/shared/src/logger.js +1 -126
- package/dist/shared/src/logger.js.map +1 -1
- package/dist/shared/src/memory-prune.d.ts +1 -0
- package/dist/shared/src/memory-prune.js +2 -0
- package/dist/shared/src/memory-prune.js.map +1 -0
- package/dist/shared/src/migrations.d.ts +1 -0
- package/dist/shared/src/migrations.js +2 -0
- package/dist/shared/src/migrations.js.map +1 -0
- package/dist/shared/src/modules/agent/agent-identity.d.ts +34 -0
- package/dist/shared/src/modules/agent/agent-identity.js +77 -0
- package/dist/shared/src/modules/agent/agent-identity.js.map +1 -0
- package/dist/shared/src/modules/agent/api-catalog.d.ts +57 -0
- package/dist/shared/src/modules/agent/api-catalog.js +254 -0
- package/dist/shared/src/modules/agent/api-catalog.js.map +1 -0
- package/dist/shared/src/modules/agent/index.d.ts +3 -0
- package/dist/shared/src/modules/agent/index.js +4 -0
- package/dist/shared/src/modules/agent/index.js.map +1 -0
- package/dist/shared/src/modules/agent/tokenizer.d.ts +54 -0
- package/dist/shared/src/modules/agent/tokenizer.js +272 -0
- package/dist/shared/src/modules/agent/tokenizer.js.map +1 -0
- package/dist/shared/src/modules/concurrency/file-lock.d.ts +93 -0
- package/dist/shared/src/modules/concurrency/file-lock.js +240 -0
- package/dist/shared/src/modules/concurrency/file-lock.js.map +1 -0
- package/dist/shared/src/modules/concurrency/index.d.ts +6 -0
- package/dist/shared/src/modules/concurrency/index.js +7 -0
- package/dist/shared/src/modules/concurrency/index.js.map +1 -0
- package/dist/shared/src/modules/concurrency/job-queue.d.ts +76 -0
- package/dist/shared/src/modules/concurrency/job-queue.js +200 -0
- package/dist/shared/src/modules/concurrency/job-queue.js.map +1 -0
- package/dist/shared/src/modules/concurrency/lock.d.ts +82 -0
- package/dist/shared/src/modules/concurrency/lock.js +159 -0
- package/dist/shared/src/modules/concurrency/lock.js.map +1 -0
- package/dist/shared/src/modules/concurrency/resilience.d.ts +84 -0
- package/dist/shared/src/modules/concurrency/resilience.js +217 -0
- package/dist/shared/src/modules/concurrency/resilience.js.map +1 -0
- package/dist/shared/src/modules/concurrency/worker-pool.d.ts +52 -0
- package/dist/shared/src/modules/concurrency/worker-pool.js +229 -0
- package/dist/shared/src/modules/concurrency/worker-pool.js.map +1 -0
- package/dist/shared/src/modules/concurrency/worker-thread.d.ts +21 -0
- package/dist/shared/src/modules/concurrency/worker-thread.js +67 -0
- package/dist/shared/src/modules/concurrency/worker-thread.js.map +1 -0
- package/dist/shared/src/modules/index.d.ts +14 -0
- package/dist/shared/src/modules/index.js +15 -0
- package/dist/shared/src/modules/index.js.map +1 -0
- package/dist/shared/src/modules/observability/audit-chain.d.ts +80 -0
- package/dist/shared/src/modules/observability/audit-chain.js +262 -0
- package/dist/shared/src/modules/observability/audit-chain.js.map +1 -0
- package/dist/shared/src/modules/observability/audit.d.ts +121 -0
- package/dist/shared/src/modules/observability/audit.js +322 -0
- package/dist/shared/src/modules/observability/audit.js.map +1 -0
- package/dist/shared/src/modules/observability/index.d.ts +4 -0
- package/dist/shared/src/modules/observability/index.js +5 -0
- package/dist/shared/src/modules/observability/index.js.map +1 -0
- package/dist/shared/src/modules/observability/logger.d.ts +31 -0
- package/dist/shared/src/modules/observability/logger.js +153 -0
- package/dist/shared/src/modules/observability/logger.js.map +1 -0
- package/dist/shared/src/modules/observability/otel.d.ts +39 -0
- package/dist/shared/src/modules/observability/otel.js +93 -0
- package/dist/shared/src/modules/observability/otel.js.map +1 -0
- package/dist/shared/src/modules/primitives/constants.d.ts +150 -0
- package/dist/shared/src/modules/primitives/constants.js +212 -0
- package/dist/shared/src/modules/primitives/constants.js.map +1 -0
- package/dist/shared/src/modules/primitives/errors.d.ts +46 -0
- package/dist/shared/src/modules/primitives/errors.js +69 -0
- package/dist/shared/src/modules/primitives/errors.js.map +1 -0
- package/dist/shared/src/modules/primitives/fs.d.ts +9 -0
- package/dist/shared/src/modules/primitives/fs.js +54 -0
- package/dist/shared/src/modules/primitives/fs.js.map +1 -0
- package/dist/shared/src/modules/primitives/index.d.ts +7 -0
- package/dist/shared/src/modules/primitives/index.js +8 -0
- package/dist/shared/src/modules/primitives/index.js.map +1 -0
- package/dist/shared/src/modules/primitives/outbound-http.d.ts +32 -0
- package/dist/shared/src/modules/primitives/outbound-http.js +88 -0
- package/dist/shared/src/modules/primitives/outbound-http.js.map +1 -0
- package/dist/shared/src/modules/primitives/string.d.ts +1 -0
- package/dist/shared/src/modules/primitives/string.js +30 -0
- package/dist/shared/src/modules/primitives/string.js.map +1 -0
- package/dist/shared/src/modules/primitives/time.d.ts +5 -0
- package/dist/shared/src/modules/primitives/time.js +35 -0
- package/dist/shared/src/modules/primitives/time.js.map +1 -0
- package/dist/shared/src/modules/primitives/types.d.ts +27 -0
- package/dist/shared/src/modules/primitives/types.js +17 -0
- package/dist/shared/src/modules/primitives/types.js.map +1 -0
- package/dist/shared/src/modules/sandbox/index.d.ts +3 -0
- package/dist/shared/src/modules/sandbox/index.js +4 -0
- package/dist/shared/src/modules/sandbox/index.js.map +1 -0
- package/dist/shared/src/modules/sandbox/sandbox-fs.d.ts +28 -0
- package/dist/shared/src/modules/sandbox/sandbox-fs.js +143 -0
- package/dist/shared/src/modules/sandbox/sandbox-fs.js.map +1 -0
- package/dist/shared/src/modules/sandbox/sandbox-runtime.d.ts +78 -0
- package/dist/shared/src/modules/sandbox/sandbox-runtime.js +282 -0
- package/dist/shared/src/modules/sandbox/sandbox-runtime.js.map +1 -0
- package/dist/shared/src/modules/sandbox/sandbox.d.ts +54 -0
- package/dist/shared/src/modules/sandbox/sandbox.js +179 -0
- package/dist/shared/src/modules/sandbox/sandbox.js.map +1 -0
- package/dist/shared/src/modules/security/index.d.ts +5 -0
- package/dist/shared/src/modules/security/index.js +6 -0
- package/dist/shared/src/modules/security/index.js.map +1 -0
- package/dist/shared/src/modules/security/pii.d.ts +70 -0
- package/dist/shared/src/modules/security/pii.js +276 -0
- package/dist/shared/src/modules/security/pii.js.map +1 -0
- package/dist/shared/src/modules/security/policy-gate.d.ts +42 -0
- package/dist/shared/src/modules/security/policy-gate.js +172 -0
- package/dist/shared/src/modules/security/policy-gate.js.map +1 -0
- package/dist/shared/src/modules/security/retention.d.ts +68 -0
- package/dist/shared/src/modules/security/retention.js +218 -0
- package/dist/shared/src/modules/security/retention.js.map +1 -0
- package/dist/shared/src/modules/security/secrets.d.ts +99 -0
- package/dist/shared/src/modules/security/secrets.js +371 -0
- package/dist/shared/src/modules/security/secrets.js.map +1 -0
- package/dist/shared/src/modules/security/tls.d.ts +87 -0
- package/dist/shared/src/modules/security/tls.js +154 -0
- package/dist/shared/src/modules/security/tls.js.map +1 -0
- package/dist/shared/src/modules/storage/database.d.ts +6 -0
- package/dist/shared/src/modules/storage/database.js +16 -0
- package/dist/shared/src/modules/storage/database.js.map +1 -0
- package/dist/shared/src/modules/storage/index.d.ts +4 -0
- package/dist/shared/src/modules/storage/index.js +5 -0
- package/dist/shared/src/modules/storage/index.js.map +1 -0
- package/dist/shared/src/modules/storage/memory-prune.d.ts +18 -0
- package/dist/shared/src/modules/storage/memory-prune.js +48 -0
- package/dist/shared/src/modules/storage/memory-prune.js.map +1 -0
- package/dist/shared/src/modules/storage/migrations.d.ts +69 -0
- package/dist/shared/src/modules/storage/migrations.js +394 -0
- package/dist/shared/src/modules/storage/migrations.js.map +1 -0
- package/dist/shared/src/modules/storage/storage.d.ts +341 -0
- package/dist/shared/src/modules/storage/storage.js +1004 -0
- package/dist/shared/src/modules/storage/storage.js.map +1 -0
- package/dist/shared/src/otel.d.ts +1 -0
- package/dist/shared/src/otel.js +2 -0
- package/dist/shared/src/otel.js.map +1 -0
- package/dist/shared/src/outbound-http.d.ts +1 -0
- package/dist/shared/src/outbound-http.js +2 -0
- package/dist/shared/src/outbound-http.js.map +1 -0
- package/dist/shared/src/pii.d.ts +1 -69
- package/dist/shared/src/pii.js +1 -219
- package/dist/shared/src/pii.js.map +1 -1
- package/dist/shared/src/policy-gate.d.ts +1 -42
- package/dist/shared/src/policy-gate.js +1 -147
- package/dist/shared/src/policy-gate.js.map +1 -1
- package/dist/shared/src/resilience.d.ts +1 -84
- package/dist/shared/src/resilience.js +1 -216
- package/dist/shared/src/resilience.js.map +1 -1
- package/dist/shared/src/retention.d.ts +1 -63
- package/dist/shared/src/retention.js +1 -170
- package/dist/shared/src/retention.js.map +1 -1
- package/dist/shared/src/sandbox-fs.d.ts +1 -28
- package/dist/shared/src/sandbox-fs.js +1 -149
- package/dist/shared/src/sandbox-fs.js.map +1 -1
- package/dist/shared/src/sandbox-runtime.d.ts +1 -85
- package/dist/shared/src/sandbox-runtime.js +1 -249
- package/dist/shared/src/sandbox-runtime.js.map +1 -1
- package/dist/shared/src/sandbox.d.ts +1 -54
- package/dist/shared/src/sandbox.js +1 -178
- package/dist/shared/src/sandbox.js.map +1 -1
- package/dist/shared/src/secrets.d.ts +1 -0
- package/dist/shared/src/secrets.js +2 -0
- package/dist/shared/src/secrets.js.map +1 -0
- package/dist/shared/src/storage.d.ts +1 -274
- package/dist/shared/src/storage.js +1 -723
- package/dist/shared/src/storage.js.map +1 -1
- package/dist/shared/src/string.d.ts +1 -1
- package/dist/shared/src/string.js +1 -29
- package/dist/shared/src/string.js.map +1 -1
- package/dist/shared/src/time.d.ts +1 -5
- package/dist/shared/src/time.js +1 -30
- package/dist/shared/src/time.js.map +1 -1
- package/dist/shared/src/tls.d.ts +1 -0
- package/dist/shared/src/tls.js +2 -0
- package/dist/shared/src/tls.js.map +1 -0
- package/dist/shared/src/tokenizer.d.ts +1 -0
- package/dist/shared/src/tokenizer.js +2 -0
- package/dist/shared/src/tokenizer.js.map +1 -0
- package/dist/shared/src/types.d.ts +1 -27
- package/dist/shared/src/types.js +1 -16
- package/dist/shared/src/types.js.map +1 -1
- package/dist/shared/src/worker-pool.d.ts +1 -52
- package/dist/shared/src/worker-pool.js +1 -209
- package/dist/shared/src/worker-pool.js.map +1 -1
- package/dist/shared/src/worker-thread.d.ts +1 -21
- package/dist/shared/src/worker-thread.js +1 -66
- package/dist/shared/src/worker-thread.js.map +1 -1
- package/package.json +4 -6
- package/templates/docs/tech-stack.md +21 -0
- package/templates/full/ATABEY_FULL.md +38 -50
- package/templates/prompts/security-audit-recipe.md +1 -1
- package/templates/standards/architecture-standards.md +6 -4
- package/templates/standards/crud-governance.md +1 -1
- package/templates/standards/deployment-standards.md +1 -1
- package/templates/standards/enterprise-systems-standards.md +5 -1
- package/templates/standards/eslint-standards.md +10 -0
- package/templates/standards/frontend-standards.md +2 -2
- package/templates/standards/governance-standards.md +2 -2
- package/templates/standards/i18n-standards.md +1 -1
- package/templates/standards/logging-and-secrets.md +1 -1
- package/templates/standards/native-standards.md +1 -1
- package/templates/standards/quality-standards.md +1 -1
- package/templates/standards/security-audit-standards.md +1 -1
- package/templates/standards/security-standards.md +1 -1
- package/templates/standards/testing-standards.md +1 -1
- package/templates/standards/token-economy.md +27 -0
- package/dist/atabey/src/cli/commands/init/create-agent.d.ts +0 -4
- package/dist/atabey/src/cli/commands/init/create-agent.js +0 -59
- package/dist/atabey/src/cli/commands/init/create-agent.js.map +0 -1
- package/dist/atabey/src/cli/utils/config-schema.d.ts +0 -213
- package/dist/atabey/src/cli/utils/config-schema.js +0 -58
- package/dist/atabey/src/cli/utils/config-schema.js.map +0 -1
- package/dist/atabey/src/cli/utils/schemas.d.ts +0 -49
- package/dist/atabey/src/cli/utils/schemas.js +0 -20
- package/dist/atabey/src/cli/utils/schemas.js.map +0 -1
- package/dist/atabey/src/contracts/index.d.ts +0 -1
- package/dist/atabey/src/contracts/index.js +0 -2
- package/dist/atabey/src/contracts/index.js.map +0 -1
- package/dist/atabey/src/contracts/tasks.d.ts +0 -44
- package/dist/atabey/src/contracts/tasks.js +0 -21
- package/dist/atabey/src/contracts/tasks.js.map +0 -1
- package/dist/atabey/src/modules/contracts/index.d.ts +0 -5
- package/dist/atabey/src/modules/contracts/index.js +0 -6
- package/dist/atabey/src/modules/contracts/index.js.map +0 -1
- package/dist/atabey/src/modules/engines/contract-engine.d.ts +0 -46
- package/dist/atabey/src/modules/engines/contract-engine.js +0 -116
- package/dist/atabey/src/modules/engines/contract-engine.js.map +0 -1
- package/dist/atabey/src/modules/engines/discovery-engine.d.ts +0 -42
- package/dist/atabey/src/modules/engines/discovery-engine.js +0 -161
- package/dist/atabey/src/modules/engines/discovery-engine.js.map +0 -1
- package/dist/atabey/src/modules/engines/file-lock.d.ts +0 -56
- package/dist/atabey/src/modules/engines/file-lock.js +0 -171
- package/dist/atabey/src/modules/engines/file-lock.js.map +0 -1
- package/dist/atabey/src/modules/engines/phase-engine.d.ts +0 -82
- package/dist/atabey/src/modules/engines/phase-engine.js +0 -204
- package/dist/atabey/src/modules/engines/phase-engine.js.map +0 -1
- package/dist/atabey/src/modules/engines/policy-engine.d.ts +0 -63
- package/dist/atabey/src/modules/engines/policy-engine.js +0 -188
- package/dist/atabey/src/modules/engines/policy-engine.js.map +0 -1
- package/dist/atabey/src/modules/engines/sandbox.d.ts +0 -31
- package/dist/atabey/src/modules/engines/sandbox.js +0 -57
- package/dist/atabey/src/modules/engines/sandbox.js.map +0 -1
- package/dist/atabey/src/modules/engines/session-engine.d.ts +0 -68
- package/dist/atabey/src/modules/engines/session-engine.js +0 -141
- package/dist/atabey/src/modules/engines/session-engine.js.map +0 -1
- package/dist/atabey/src/modules/engines/worker-pool.d.ts +0 -8
- package/dist/atabey/src/modules/engines/worker-pool.js +0 -9
- package/dist/atabey/src/modules/engines/worker-pool.js.map +0 -1
- package/dist/atabey/src/modules/providers/llm-provider.d.ts +0 -87
- package/dist/atabey/src/modules/providers/llm-provider.js +0 -242
- package/dist/atabey/src/modules/providers/llm-provider.js.map +0 -1
- package/dist/atabey/src/shared/file-lock.d.ts +0 -1
- package/dist/atabey/src/shared/file-lock.js +0 -2
- package/dist/atabey/src/shared/file-lock.js.map +0 -1
- package/dist/atabey/src/shared/job-queue.d.ts +0 -1
- package/dist/atabey/src/shared/job-queue.js +0 -2
- package/dist/atabey/src/shared/job-queue.js.map +0 -1
- package/dist/atabey/src/shared/lock.d.ts +0 -1
- package/dist/atabey/src/shared/lock.js +0 -2
- package/dist/atabey/src/shared/lock.js.map +0 -1
- package/dist/atabey/src/shared/resilience.d.ts +0 -1
- package/dist/atabey/src/shared/resilience.js +0 -2
- package/dist/atabey/src/shared/resilience.js.map +0 -1
- package/dist/atabey/src/shared/retention.d.ts +0 -1
- package/dist/atabey/src/shared/retention.js +0 -2
- package/dist/atabey/src/shared/retention.js.map +0 -1
- package/dist/atabey/src/shared/sandbox-runtime.d.ts +0 -1
- package/dist/atabey/src/shared/sandbox-runtime.js +0 -2
- package/dist/atabey/src/shared/sandbox-runtime.js.map +0 -1
- package/dist/atabey/src/shared/sandbox.d.ts +0 -1
- package/dist/atabey/src/shared/sandbox.js +0 -2
- package/dist/atabey/src/shared/sandbox.js.map +0 -1
- package/dist/atabey/src/shared/worker-pool.d.ts +0 -1
- package/dist/atabey/src/shared/worker-pool.js +0 -2
- package/dist/atabey/src/shared/worker-pool.js.map +0 -1
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenTelemetry-compatible tracing without an SDK dependency.
|
|
3
|
+
*
|
|
4
|
+
* Produces W3C Trace Context ids and OTLP-shaped span records, written as
|
|
5
|
+
* JSON Lines to `.atabey/telemetry/otel.jsonl` (and optionally pushed to an
|
|
6
|
+
* OTLP/HTTP collector via OTEL_EXPORTER_OTLP_ENDPOINT). This lets enterprise
|
|
7
|
+
* teams ship Atabey's tool spans to Datadog/Jaeger/Grafana/ELK without Atabey
|
|
8
|
+
* taking a hard dependency on the OTel SDK.
|
|
9
|
+
*/
|
|
10
|
+
import crypto from "crypto";
|
|
11
|
+
import fs from "fs";
|
|
12
|
+
import os from "os";
|
|
13
|
+
import path from "path";
|
|
14
|
+
export function newTraceId() {
|
|
15
|
+
return crypto.randomBytes(16).toString("hex");
|
|
16
|
+
}
|
|
17
|
+
export function newSpanId() {
|
|
18
|
+
return crypto.randomBytes(8).toString("hex");
|
|
19
|
+
}
|
|
20
|
+
/** W3C traceparent header for the given ids. */
|
|
21
|
+
export function formatTraceparent(traceId, spanId, sampled = true) {
|
|
22
|
+
return `00-${traceId}-${spanId}-${sampled ? "01" : "00"}`;
|
|
23
|
+
}
|
|
24
|
+
function cleanAttributes(attributes) {
|
|
25
|
+
const out = {};
|
|
26
|
+
for (const [k, v] of Object.entries(attributes)) {
|
|
27
|
+
if (v !== undefined)
|
|
28
|
+
out[k] = v;
|
|
29
|
+
}
|
|
30
|
+
return out;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Emit a span record. Best-effort: telemetry must never break tool execution.
|
|
34
|
+
*/
|
|
35
|
+
export function emitSpan(projectRoot, span) {
|
|
36
|
+
const record = {
|
|
37
|
+
traceId: span.traceId,
|
|
38
|
+
spanId: span.spanId,
|
|
39
|
+
parentSpanId: span.parentSpanId,
|
|
40
|
+
name: span.name,
|
|
41
|
+
startTimeUnixNano: String(BigInt(Math.round(span.startMs)) * 1000000n),
|
|
42
|
+
endTimeUnixNano: String(BigInt(Math.round(span.endMs)) * 1000000n),
|
|
43
|
+
attributes: cleanAttributes(span.attributes || {}),
|
|
44
|
+
status: span.status || "OK",
|
|
45
|
+
};
|
|
46
|
+
try {
|
|
47
|
+
const effectiveRoot = process.env.VITEST && path.resolve(projectRoot) === path.resolve(process.cwd())
|
|
48
|
+
? path.join(os.tmpdir(), `atabey-vitest-worker-${process.pid}`)
|
|
49
|
+
: projectRoot;
|
|
50
|
+
const dir = path.join(effectiveRoot, ".atabey", "telemetry");
|
|
51
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
52
|
+
fs.appendFileSync(path.join(dir, "otel.jsonl"), `${JSON.stringify(record)}\n`);
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
/* best-effort */
|
|
56
|
+
}
|
|
57
|
+
const endpoint = process.env.OTEL_EXPORTER_OTLP_ENDPOINT?.trim();
|
|
58
|
+
if (endpoint) {
|
|
59
|
+
void pushOtlp(endpoint, record).catch(() => { });
|
|
60
|
+
}
|
|
61
|
+
return record;
|
|
62
|
+
}
|
|
63
|
+
async function pushOtlp(endpoint, record) {
|
|
64
|
+
const url = endpoint.replace(/\/$/, "") + "/v1/traces";
|
|
65
|
+
const body = JSON.stringify({
|
|
66
|
+
resourceSpans: [{
|
|
67
|
+
resource: { attributes: [{ key: "service.name", value: { stringValue: "atabey" } }] },
|
|
68
|
+
scopeSpans: [{ spans: [{
|
|
69
|
+
traceId: record.traceId,
|
|
70
|
+
spanId: record.spanId,
|
|
71
|
+
parentSpanId: record.parentSpanId,
|
|
72
|
+
name: record.name,
|
|
73
|
+
startTimeUnixNano: record.startTimeUnixNano,
|
|
74
|
+
endTimeUnixNano: record.endTimeUnixNano,
|
|
75
|
+
attributes: Object.entries(record.attributes).map(([k, v]) => ({
|
|
76
|
+
key: k,
|
|
77
|
+
value: typeof v === "number"
|
|
78
|
+
? { doubleValue: v }
|
|
79
|
+
: typeof v === "boolean"
|
|
80
|
+
? { boolValue: v }
|
|
81
|
+
: { stringValue: String(v) },
|
|
82
|
+
})),
|
|
83
|
+
status: { code: record.status === "ERROR" ? 2 : 1 },
|
|
84
|
+
}] }],
|
|
85
|
+
}],
|
|
86
|
+
});
|
|
87
|
+
await fetch(url, {
|
|
88
|
+
method: "POST",
|
|
89
|
+
headers: { "Content-Type": "application/json" },
|
|
90
|
+
body,
|
|
91
|
+
}).catch(() => { });
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=otel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otel.js","sourceRoot":"","sources":["../../../../../../shared/src/modules/observability/otel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atabey — Single Source of Truth for framework constants.
|
|
3
|
+
* Import from here instead of hardcoding paths, phases, or directory names.
|
|
4
|
+
*/
|
|
5
|
+
export declare const FRAMEWORK: {
|
|
6
|
+
NAME: string;
|
|
7
|
+
CORE_DIR: string;
|
|
8
|
+
UNIFIED_HUB_DIR: string;
|
|
9
|
+
CONSTITUTION_FILE: string;
|
|
10
|
+
DEFAULT_TRACE_ID: string;
|
|
11
|
+
DEFAULT_PHASE: string;
|
|
12
|
+
DEFAULT_MANAGER_STATE: string;
|
|
13
|
+
};
|
|
14
|
+
export declare const PROJECT_PHASES: readonly ["PHASE_0", "PHASE_1", "PHASE_2", "PHASE_3", "PHASE_4"];
|
|
15
|
+
export declare const ADAPTER_DIRS: {
|
|
16
|
+
readonly GEMINI: ".gemini";
|
|
17
|
+
readonly CLAUDE: ".claude";
|
|
18
|
+
readonly GROK: ".grok";
|
|
19
|
+
readonly CURSOR: ".cursor";
|
|
20
|
+
readonly CODEX: ".agents";
|
|
21
|
+
readonly ANTIGRAVITY: ".agents";
|
|
22
|
+
readonly LOCAL: ".atabey";
|
|
23
|
+
readonly OPENCODE: ".opencode";
|
|
24
|
+
readonly LEGACY_AGENT: ".agent";
|
|
25
|
+
};
|
|
26
|
+
/** Priority order for framework directory resolution (CLI + MCP).
|
|
27
|
+
* De-duplicated: `.agents` serves both CODEX and ANTIGRAVITY, `.atabey` is also LOCAL. */
|
|
28
|
+
export declare const FRAMEWORK_DIR_CANDIDATES: readonly [string, ".agents", ".claude", ".gemini", ".grok", ".cursor", ".opencode"];
|
|
29
|
+
/** Slug under `.agents/{slug}/` for each adapter in unified mode. */
|
|
30
|
+
export declare const UNIFIED_ADAPTER_SLUG: {
|
|
31
|
+
readonly gemini: "gemini";
|
|
32
|
+
readonly claude: "claude";
|
|
33
|
+
readonly grok: "grok";
|
|
34
|
+
readonly cursor: "cursor";
|
|
35
|
+
readonly codex: "codex";
|
|
36
|
+
readonly local: "local";
|
|
37
|
+
readonly opencode: "opencode";
|
|
38
|
+
readonly "antigravity-cli": "antigravity";
|
|
39
|
+
};
|
|
40
|
+
export type UnifiedAdapterSlug = keyof typeof UNIFIED_ADAPTER_SLUG;
|
|
41
|
+
export declare const NATIVE_AGENT_PATHS: {
|
|
42
|
+
readonly gemini: string;
|
|
43
|
+
readonly claude: string;
|
|
44
|
+
readonly grok: string;
|
|
45
|
+
readonly cursor: string;
|
|
46
|
+
readonly codex: string;
|
|
47
|
+
readonly local: string;
|
|
48
|
+
readonly opencode: string;
|
|
49
|
+
readonly "antigravity-cli": string;
|
|
50
|
+
};
|
|
51
|
+
/** Legacy layout bases used by `check` and discovery (non-unified installs). */
|
|
52
|
+
export declare const LEGACY_AGENT_LAYOUT_BASES: readonly [string, string, string, string, string, string, string, string];
|
|
53
|
+
export declare const FRAMEWORK_SUBDIRS: {
|
|
54
|
+
readonly AGENTS: "agents";
|
|
55
|
+
readonly SKILLS: "skills";
|
|
56
|
+
readonly KNOWLEDGE: "knowledge";
|
|
57
|
+
readonly PROMPTS: "prompts";
|
|
58
|
+
readonly MEMORY: "memory";
|
|
59
|
+
readonly ROUTER: "router";
|
|
60
|
+
readonly REGISTRY: "registry";
|
|
61
|
+
readonly OBSERVABILITY: "observability";
|
|
62
|
+
readonly RULES: "rules";
|
|
63
|
+
readonly MESSAGES: "messages";
|
|
64
|
+
readonly LOGS: "logs";
|
|
65
|
+
readonly MEMORY_GRAPH: "memory-graph";
|
|
66
|
+
};
|
|
67
|
+
export declare const CORE_SCAFFOLD_SUBDIRS: readonly ["knowledge", "prompts", "memory", "router", "registry", "observability", "rules"];
|
|
68
|
+
export declare const RUNTIME_SUBDIRS: readonly ["messages", "logs", "memory-graph"];
|
|
69
|
+
export declare const MEMORY_SUBDIRS: {
|
|
70
|
+
readonly TASKS: "tasks";
|
|
71
|
+
readonly HISTORY: "history";
|
|
72
|
+
};
|
|
73
|
+
export declare const MEMORY_FILES: {
|
|
74
|
+
readonly STATE: "state.json";
|
|
75
|
+
readonly STATUS: "status.json";
|
|
76
|
+
readonly PROJECT_MEMORY: "PROJECT_MEMORY.md";
|
|
77
|
+
readonly SHARED_FACTS: "shared-facts.json";
|
|
78
|
+
};
|
|
79
|
+
/** Default layout scaffolded into consumer projects after `atabey init`. */
|
|
80
|
+
export declare const DEFAULT_CONSUMER_PATHS: {
|
|
81
|
+
readonly backend: "apps/backend";
|
|
82
|
+
readonly frontend: "apps/web";
|
|
83
|
+
readonly mobile: "apps/mobile";
|
|
84
|
+
readonly docs: "docs";
|
|
85
|
+
readonly tests: "tests";
|
|
86
|
+
};
|
|
87
|
+
/** Paths inside the Atabey framework source monorepo (not consumer apps/). */
|
|
88
|
+
export declare const FRAMEWORK_MONOREPO_PATHS: {
|
|
89
|
+
readonly backend: "packages/atabey";
|
|
90
|
+
readonly frontend: "apps/web";
|
|
91
|
+
readonly mobile: "apps/mobile";
|
|
92
|
+
readonly docs: "docs";
|
|
93
|
+
readonly tests: "packages";
|
|
94
|
+
};
|
|
95
|
+
/** @deprecated Use DEFAULT_CONSUMER_PATHS */
|
|
96
|
+
export declare const DEFAULT_MONOREPO_PATHS: {
|
|
97
|
+
readonly backend: "apps/backend";
|
|
98
|
+
readonly frontend: "apps/web";
|
|
99
|
+
readonly mobile: "apps/mobile";
|
|
100
|
+
readonly docs: "docs";
|
|
101
|
+
readonly tests: "tests";
|
|
102
|
+
};
|
|
103
|
+
/** Cursor rule globs per agent role (framework monorepo layout). */
|
|
104
|
+
export declare const CURSOR_AGENT_GLOBS: Record<string, string>;
|
|
105
|
+
export declare const MCP: {
|
|
106
|
+
readonly SERVER_NAME: "atabey";
|
|
107
|
+
readonly ROOT_CONFIG_FILE: "mcp.json";
|
|
108
|
+
readonly PROJECT_ROOT_ENV: "ATABEY_PROJECT_ROOT";
|
|
109
|
+
readonly TEST_DIR_ENV: "ATABEY_TEST_DIR";
|
|
110
|
+
readonly TRANSPORT_ENV: "MCP_TRANSPORT";
|
|
111
|
+
/** IDE clients (Claude, Cursor, Gemini) spawn MCP via stdio JSON-RPC. */
|
|
112
|
+
readonly TRANSPORT_STDIO: "stdio";
|
|
113
|
+
/** HTTP/SSE unified server for multi-session and remote clients. */
|
|
114
|
+
readonly TRANSPORT_UNIFIED: "unified";
|
|
115
|
+
readonly SERVER_DIST_PATH: "../atabey-mcp/dist/atabey-mcp/src/mcp/index.js";
|
|
116
|
+
};
|
|
117
|
+
/** Headless Hermes orchestrator (AgentLoop) — auto-starts with MCP server by default. */
|
|
118
|
+
export declare const ORCHESTRATOR: {
|
|
119
|
+
readonly AUTO_START_ENV: "ATABEY_AUTO_START_ORCHESTRATOR";
|
|
120
|
+
readonly INTERVAL_MS_ENV: "ATABEY_ORCHESTRATOR_INTERVAL_MS";
|
|
121
|
+
readonly DEFAULT_AUTO_START: true;
|
|
122
|
+
readonly DEFAULT_INTERVAL_MS: 1000;
|
|
123
|
+
};
|
|
124
|
+
export declare const ROOT_CONFIG_FILES: {
|
|
125
|
+
readonly MCP: "mcp.json";
|
|
126
|
+
readonly DOT_MCP: ".mcp.json";
|
|
127
|
+
readonly ENV_EXAMPLE: ".env.example";
|
|
128
|
+
readonly VSCODE_MCP: ".vscode/mcp.json";
|
|
129
|
+
};
|
|
130
|
+
export declare const TEMPLATE_PLACEHOLDERS: {
|
|
131
|
+
readonly FRAMEWORK_DIR: "{{FRAMEWORK_DIR}}";
|
|
132
|
+
readonly ADAPTER: "{{ADAPTER}}";
|
|
133
|
+
readonly BACKEND_DIR: "{{BACKEND_DIR}}";
|
|
134
|
+
readonly FRONTEND_DIR: "{{FRONTEND_DIR}}";
|
|
135
|
+
readonly DOCS_DIR: "{{DOCS_DIR}}";
|
|
136
|
+
readonly TESTS_DIR: "{{TESTS_DIR}}";
|
|
137
|
+
};
|
|
138
|
+
export declare const AGENT_FILE_EXT: {
|
|
139
|
+
readonly MARKDOWN: ".md";
|
|
140
|
+
readonly CURSOR_RULE: ".mdc";
|
|
141
|
+
};
|
|
142
|
+
export declare function pathJoin(...segments: string[]): string;
|
|
143
|
+
export declare function corePath(...segments: string[]): string;
|
|
144
|
+
export declare function unifiedHubPath(...segments: string[]): string;
|
|
145
|
+
export declare function unifiedAdapterPath(slug: string, ...segments: string[]): string;
|
|
146
|
+
export declare function knowledgePath(filename: string): string;
|
|
147
|
+
/** Backward-compatible aliases */
|
|
148
|
+
export declare const CORE_FRAMEWORK_DIR: string;
|
|
149
|
+
export declare const UNIFIED_HUB_DIR: string;
|
|
150
|
+
export declare const SKILLS_HUB_PATH: string;
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atabey — Single Source of Truth for framework constants.
|
|
3
|
+
* Import from here instead of hardcoding paths, phases, or directory names.
|
|
4
|
+
*/
|
|
5
|
+
// ─── Framework identity ───────────────────────────────────────────────────────
|
|
6
|
+
export const FRAMEWORK = {
|
|
7
|
+
NAME: "Atabey",
|
|
8
|
+
CORE_DIR: ".atabey",
|
|
9
|
+
UNIFIED_HUB_DIR: ".agents",
|
|
10
|
+
CONSTITUTION_FILE: "ATABEY.md",
|
|
11
|
+
DEFAULT_TRACE_ID: "T-000",
|
|
12
|
+
DEFAULT_PHASE: "PHASE_0",
|
|
13
|
+
DEFAULT_MANAGER_STATE: "ACTIVE",
|
|
14
|
+
};
|
|
15
|
+
export const PROJECT_PHASES = [
|
|
16
|
+
"PHASE_0",
|
|
17
|
+
"PHASE_1",
|
|
18
|
+
"PHASE_2",
|
|
19
|
+
"PHASE_3",
|
|
20
|
+
"PHASE_4",
|
|
21
|
+
];
|
|
22
|
+
// ─── Adapter platform directories (native / legacy) ───────────────────────────
|
|
23
|
+
export const ADAPTER_DIRS = {
|
|
24
|
+
GEMINI: ".gemini",
|
|
25
|
+
CLAUDE: ".claude",
|
|
26
|
+
GROK: ".grok",
|
|
27
|
+
CURSOR: ".cursor",
|
|
28
|
+
CODEX: ".agents",
|
|
29
|
+
ANTIGRAVITY: ".agents",
|
|
30
|
+
LOCAL: ".atabey",
|
|
31
|
+
OPENCODE: ".opencode",
|
|
32
|
+
LEGACY_AGENT: ".agent",
|
|
33
|
+
};
|
|
34
|
+
/** Priority order for framework directory resolution (CLI + MCP).
|
|
35
|
+
* De-duplicated: `.agents` serves both CODEX and ANTIGRAVITY, `.atabey` is also LOCAL. */
|
|
36
|
+
export const FRAMEWORK_DIR_CANDIDATES = [
|
|
37
|
+
FRAMEWORK.CORE_DIR, // .atabey
|
|
38
|
+
ADAPTER_DIRS.CODEX, // .agents (codex + antigravity)
|
|
39
|
+
ADAPTER_DIRS.CLAUDE, // .claude
|
|
40
|
+
ADAPTER_DIRS.GEMINI, // .gemini
|
|
41
|
+
ADAPTER_DIRS.GROK, // .grok
|
|
42
|
+
ADAPTER_DIRS.CURSOR, // .cursor
|
|
43
|
+
ADAPTER_DIRS.OPENCODE, // .opencode
|
|
44
|
+
];
|
|
45
|
+
/** Slug under `.agents/{slug}/` for each adapter in unified mode. */
|
|
46
|
+
export const UNIFIED_ADAPTER_SLUG = {
|
|
47
|
+
gemini: "gemini",
|
|
48
|
+
claude: "claude",
|
|
49
|
+
grok: "grok",
|
|
50
|
+
cursor: "cursor",
|
|
51
|
+
codex: "codex",
|
|
52
|
+
local: "local",
|
|
53
|
+
opencode: "opencode",
|
|
54
|
+
"antigravity-cli": "antigravity",
|
|
55
|
+
};
|
|
56
|
+
// ─── Native agent instruction paths (legacy tool compatibility) ───────────────
|
|
57
|
+
export const NATIVE_AGENT_PATHS = {
|
|
58
|
+
gemini: pathJoin(ADAPTER_DIRS.GEMINI, "agents"),
|
|
59
|
+
claude: pathJoin(ADAPTER_DIRS.CLAUDE, "agents"),
|
|
60
|
+
grok: pathJoin(ADAPTER_DIRS.GROK, "agents"),
|
|
61
|
+
cursor: pathJoin(ADAPTER_DIRS.CURSOR, "rules"),
|
|
62
|
+
codex: pathJoin(ADAPTER_DIRS.CODEX, "instructions"),
|
|
63
|
+
local: pathJoin(ADAPTER_DIRS.LOCAL, "agents"),
|
|
64
|
+
opencode: pathJoin(ADAPTER_DIRS.OPENCODE, "agents"),
|
|
65
|
+
"antigravity-cli": pathJoin(ADAPTER_DIRS.ANTIGRAVITY, "agents"),
|
|
66
|
+
};
|
|
67
|
+
/** Legacy layout bases used by `check` and discovery (non-unified installs). */
|
|
68
|
+
export const LEGACY_AGENT_LAYOUT_BASES = [
|
|
69
|
+
NATIVE_AGENT_PATHS.gemini,
|
|
70
|
+
NATIVE_AGENT_PATHS.claude,
|
|
71
|
+
NATIVE_AGENT_PATHS.cursor,
|
|
72
|
+
NATIVE_AGENT_PATHS.grok,
|
|
73
|
+
NATIVE_AGENT_PATHS.codex,
|
|
74
|
+
NATIVE_AGENT_PATHS.local,
|
|
75
|
+
NATIVE_AGENT_PATHS.opencode,
|
|
76
|
+
NATIVE_AGENT_PATHS["antigravity-cli"],
|
|
77
|
+
];
|
|
78
|
+
// ─── Framework internal subdirectories (under `.atabey/`) ──────────────────
|
|
79
|
+
export const FRAMEWORK_SUBDIRS = {
|
|
80
|
+
AGENTS: "agents",
|
|
81
|
+
SKILLS: "skills",
|
|
82
|
+
KNOWLEDGE: "knowledge",
|
|
83
|
+
PROMPTS: "prompts",
|
|
84
|
+
MEMORY: "memory",
|
|
85
|
+
ROUTER: "router",
|
|
86
|
+
REGISTRY: "registry",
|
|
87
|
+
OBSERVABILITY: "observability",
|
|
88
|
+
RULES: "rules",
|
|
89
|
+
MESSAGES: "messages",
|
|
90
|
+
LOGS: "logs",
|
|
91
|
+
MEMORY_GRAPH: "memory-graph",
|
|
92
|
+
};
|
|
93
|
+
export const CORE_SCAFFOLD_SUBDIRS = [
|
|
94
|
+
FRAMEWORK_SUBDIRS.KNOWLEDGE,
|
|
95
|
+
FRAMEWORK_SUBDIRS.PROMPTS,
|
|
96
|
+
FRAMEWORK_SUBDIRS.MEMORY,
|
|
97
|
+
FRAMEWORK_SUBDIRS.ROUTER,
|
|
98
|
+
FRAMEWORK_SUBDIRS.REGISTRY,
|
|
99
|
+
FRAMEWORK_SUBDIRS.OBSERVABILITY,
|
|
100
|
+
FRAMEWORK_SUBDIRS.RULES,
|
|
101
|
+
];
|
|
102
|
+
export const RUNTIME_SUBDIRS = [
|
|
103
|
+
FRAMEWORK_SUBDIRS.MESSAGES,
|
|
104
|
+
FRAMEWORK_SUBDIRS.LOGS,
|
|
105
|
+
FRAMEWORK_SUBDIRS.MEMORY_GRAPH,
|
|
106
|
+
];
|
|
107
|
+
export const MEMORY_SUBDIRS = {
|
|
108
|
+
TASKS: "tasks",
|
|
109
|
+
HISTORY: "history",
|
|
110
|
+
};
|
|
111
|
+
export const MEMORY_FILES = {
|
|
112
|
+
STATE: "state.json",
|
|
113
|
+
STATUS: "status.json",
|
|
114
|
+
PROJECT_MEMORY: "PROJECT_MEMORY.md",
|
|
115
|
+
SHARED_FACTS: "shared-facts.json",
|
|
116
|
+
};
|
|
117
|
+
// ─── Monorepo default paths ───────────────────────────────────────────────────
|
|
118
|
+
/** Default layout scaffolded into consumer projects after `atabey init`. */
|
|
119
|
+
export const DEFAULT_CONSUMER_PATHS = {
|
|
120
|
+
backend: "apps/backend",
|
|
121
|
+
frontend: "apps/web",
|
|
122
|
+
mobile: "apps/mobile",
|
|
123
|
+
docs: "docs",
|
|
124
|
+
tests: "tests",
|
|
125
|
+
};
|
|
126
|
+
/** Paths inside the Atabey framework source monorepo (not consumer apps/). */
|
|
127
|
+
export const FRAMEWORK_MONOREPO_PATHS = {
|
|
128
|
+
backend: "packages/atabey",
|
|
129
|
+
frontend: "apps/web",
|
|
130
|
+
mobile: "apps/mobile",
|
|
131
|
+
docs: "docs",
|
|
132
|
+
tests: "packages",
|
|
133
|
+
};
|
|
134
|
+
/** @deprecated Use DEFAULT_CONSUMER_PATHS */
|
|
135
|
+
export const DEFAULT_MONOREPO_PATHS = DEFAULT_CONSUMER_PATHS;
|
|
136
|
+
/** Cursor rule globs per agent role (framework monorepo layout). */
|
|
137
|
+
export const CURSOR_AGENT_GLOBS = {
|
|
138
|
+
manager: "**/*",
|
|
139
|
+
security: "**/*",
|
|
140
|
+
architect: "**/*",
|
|
141
|
+
backend: `${DEFAULT_MONOREPO_PATHS.backend}/**/*`,
|
|
142
|
+
frontend: `${DEFAULT_MONOREPO_PATHS.frontend}/**/*`,
|
|
143
|
+
mobile: `${DEFAULT_MONOREPO_PATHS.mobile}/**/*`,
|
|
144
|
+
native: "apps/native/**/*",
|
|
145
|
+
database: `${DEFAULT_MONOREPO_PATHS.backend}/src/database/**/*`,
|
|
146
|
+
devops: "{.github,docker,infra,scripts,*.yml,*.yaml,Dockerfile*}",
|
|
147
|
+
quality: "**/*",
|
|
148
|
+
analyst: "{docs,specs,contracts}/**/*",
|
|
149
|
+
explorer: "**/*",
|
|
150
|
+
git: "**/*",
|
|
151
|
+
};
|
|
152
|
+
// ─── MCP & environment ──────────────────────────────────────────────────────
|
|
153
|
+
export const MCP = {
|
|
154
|
+
SERVER_NAME: "atabey",
|
|
155
|
+
ROOT_CONFIG_FILE: "mcp.json",
|
|
156
|
+
PROJECT_ROOT_ENV: "ATABEY_PROJECT_ROOT",
|
|
157
|
+
TEST_DIR_ENV: "ATABEY_TEST_DIR",
|
|
158
|
+
TRANSPORT_ENV: "MCP_TRANSPORT",
|
|
159
|
+
/** IDE clients (Claude, Cursor, Gemini) spawn MCP via stdio JSON-RPC. */
|
|
160
|
+
TRANSPORT_STDIO: "stdio",
|
|
161
|
+
/** HTTP/SSE unified server for multi-session and remote clients. */
|
|
162
|
+
TRANSPORT_UNIFIED: "unified",
|
|
163
|
+
SERVER_DIST_PATH: "../atabey-mcp/dist/atabey-mcp/src/mcp/index.js",
|
|
164
|
+
};
|
|
165
|
+
/** Headless Hermes orchestrator (AgentLoop) — auto-starts with MCP server by default. */
|
|
166
|
+
export const ORCHESTRATOR = {
|
|
167
|
+
AUTO_START_ENV: "ATABEY_AUTO_START_ORCHESTRATOR",
|
|
168
|
+
INTERVAL_MS_ENV: "ATABEY_ORCHESTRATOR_INTERVAL_MS",
|
|
169
|
+
DEFAULT_AUTO_START: true,
|
|
170
|
+
DEFAULT_INTERVAL_MS: 1000,
|
|
171
|
+
};
|
|
172
|
+
export const ROOT_CONFIG_FILES = {
|
|
173
|
+
MCP: MCP.ROOT_CONFIG_FILE,
|
|
174
|
+
DOT_MCP: ".mcp.json",
|
|
175
|
+
ENV_EXAMPLE: ".env.example",
|
|
176
|
+
VSCODE_MCP: ".vscode/mcp.json",
|
|
177
|
+
};
|
|
178
|
+
// ─── Shim template placeholders ───────────────────────────────────────────────
|
|
179
|
+
export const TEMPLATE_PLACEHOLDERS = {
|
|
180
|
+
FRAMEWORK_DIR: "{{FRAMEWORK_DIR}}",
|
|
181
|
+
ADAPTER: "{{ADAPTER}}",
|
|
182
|
+
BACKEND_DIR: "{{BACKEND_DIR}}",
|
|
183
|
+
FRONTEND_DIR: "{{FRONTEND_DIR}}",
|
|
184
|
+
DOCS_DIR: "{{DOCS_DIR}}",
|
|
185
|
+
TESTS_DIR: "{{TESTS_DIR}}",
|
|
186
|
+
};
|
|
187
|
+
// ─── File extensions ─────────────────────────────────────────────────────────
|
|
188
|
+
export const AGENT_FILE_EXT = {
|
|
189
|
+
MARKDOWN: ".md",
|
|
190
|
+
CURSOR_RULE: ".mdc",
|
|
191
|
+
};
|
|
192
|
+
// ─── Path helpers ─────────────────────────────────────────────────────────────
|
|
193
|
+
export function pathJoin(...segments) {
|
|
194
|
+
return segments.filter(Boolean).join("/");
|
|
195
|
+
}
|
|
196
|
+
export function corePath(...segments) {
|
|
197
|
+
return [FRAMEWORK.CORE_DIR, ...segments.filter(Boolean)].join("/");
|
|
198
|
+
}
|
|
199
|
+
export function unifiedHubPath(...segments) {
|
|
200
|
+
return [FRAMEWORK.UNIFIED_HUB_DIR, ...segments.filter(Boolean)].join("/");
|
|
201
|
+
}
|
|
202
|
+
export function unifiedAdapterPath(slug, ...segments) {
|
|
203
|
+
return unifiedHubPath(slug, ...segments);
|
|
204
|
+
}
|
|
205
|
+
export function knowledgePath(filename) {
|
|
206
|
+
return corePath(FRAMEWORK_SUBDIRS.KNOWLEDGE, filename);
|
|
207
|
+
}
|
|
208
|
+
/** Backward-compatible aliases */
|
|
209
|
+
export const CORE_FRAMEWORK_DIR = FRAMEWORK.CORE_DIR;
|
|
210
|
+
export const UNIFIED_HUB_DIR = FRAMEWORK.UNIFIED_HUB_DIR;
|
|
211
|
+
export const SKILLS_HUB_PATH = pathJoin(UNIFIED_HUB_DIR, FRAMEWORK_SUBDIRS.SKILLS);
|
|
212
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../shared/src/modules/primitives/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enterprise Base Error class for the Atabey Framework.
|
|
3
|
+
*/
|
|
4
|
+
export declare class AtabeyBaseError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
readonly timestamp: Date;
|
|
7
|
+
readonly details?: unknown;
|
|
8
|
+
readonly solution?: string;
|
|
9
|
+
constructor(message: string, code?: string, details?: unknown, solution?: string);
|
|
10
|
+
/**
|
|
11
|
+
* Converts the error into a structured JSON log format.
|
|
12
|
+
*/
|
|
13
|
+
toJSON(): {
|
|
14
|
+
name: string;
|
|
15
|
+
message: string;
|
|
16
|
+
code: string;
|
|
17
|
+
timestamp: string;
|
|
18
|
+
details: unknown;
|
|
19
|
+
solution: string | undefined;
|
|
20
|
+
stack: string | undefined;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Thrown when configuration loading or validation fails.
|
|
25
|
+
*/
|
|
26
|
+
export declare class ConfigurationError extends AtabeyBaseError {
|
|
27
|
+
constructor(message: string, details?: unknown, solution?: string);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Thrown when data schema or payload validation fails.
|
|
31
|
+
*/
|
|
32
|
+
export declare class ValidationError extends AtabeyBaseError {
|
|
33
|
+
constructor(message: string, details?: unknown, solution?: string);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Thrown when adapter initialization or execution fails.
|
|
37
|
+
*/
|
|
38
|
+
export declare class AdapterError extends AtabeyBaseError {
|
|
39
|
+
constructor(message: string, adapterId: string, details?: unknown, solution?: string);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Thrown when orchestration or agent communication fails.
|
|
43
|
+
*/
|
|
44
|
+
export declare class OrchestrationError extends AtabeyBaseError {
|
|
45
|
+
constructor(message: string, details?: unknown, solution?: string);
|
|
46
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enterprise Base Error class for the Atabey Framework.
|
|
3
|
+
*/
|
|
4
|
+
export class AtabeyBaseError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
timestamp;
|
|
7
|
+
details;
|
|
8
|
+
solution;
|
|
9
|
+
constructor(message, code = "ATABEY_INTERNAL_ERROR", details, solution) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.name = this.constructor.name;
|
|
12
|
+
this.code = code;
|
|
13
|
+
this.timestamp = new Date();
|
|
14
|
+
this.details = details;
|
|
15
|
+
this.solution = solution;
|
|
16
|
+
// Ensure proper prototype chain and capture stack trace
|
|
17
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
18
|
+
if (Error.captureStackTrace) {
|
|
19
|
+
Error.captureStackTrace(this, this.constructor);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Converts the error into a structured JSON log format.
|
|
24
|
+
*/
|
|
25
|
+
toJSON() {
|
|
26
|
+
return {
|
|
27
|
+
name: this.name,
|
|
28
|
+
message: this.message,
|
|
29
|
+
code: this.code,
|
|
30
|
+
timestamp: this.timestamp.toISOString(),
|
|
31
|
+
details: this.details,
|
|
32
|
+
solution: this.solution,
|
|
33
|
+
stack: this.stack,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Thrown when configuration loading or validation fails.
|
|
39
|
+
*/
|
|
40
|
+
export class ConfigurationError extends AtabeyBaseError {
|
|
41
|
+
constructor(message, details, solution) {
|
|
42
|
+
super(message, "CONFIGURATION_ERROR", details, solution);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Thrown when data schema or payload validation fails.
|
|
47
|
+
*/
|
|
48
|
+
export class ValidationError extends AtabeyBaseError {
|
|
49
|
+
constructor(message, details, solution) {
|
|
50
|
+
super(message, "VALIDATION_ERROR", details, solution);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Thrown when adapter initialization or execution fails.
|
|
55
|
+
*/
|
|
56
|
+
export class AdapterError extends AtabeyBaseError {
|
|
57
|
+
constructor(message, adapterId, details, solution) {
|
|
58
|
+
super(`Adapter '${adapterId}' failure: ${message}`, "ADAPTER_ERROR", details, solution);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Thrown when orchestration or agent communication fails.
|
|
63
|
+
*/
|
|
64
|
+
export class OrchestrationError extends AtabeyBaseError {
|
|
65
|
+
constructor(message, details, solution) {
|
|
66
|
+
super(message, "ORCHESTRATION_ERROR", details, solution);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../shared/src/modules/primitives/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACtB,IAAI,CAAS;IACb,SAAS,CAAO;IAChB,OAAO,CAAW;IAClB,QAAQ,CAAU;IAElC,YAAY,OAAe,EAAE,IAAI,GAAG,uBAAuB,EAAE,OAAiB,EAAE,QAAiB;QAC7F,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,wDAAwD;QACxD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED;;OAEG;IACI,MAAM;QACT,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IACnD,YAAY,OAAe,EAAE,OAAiB,EAAE,QAAiB;QAC7D,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,eAAe;IAChD,YAAY,OAAe,EAAE,OAAiB,EAAE,QAAiB;QAC7D,KAAK,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,eAAe;IAC7C,YAAY,OAAe,EAAE,SAAiB,EAAE,OAAiB,EAAE,QAAiB;QAChF,KAAK,CAAC,YAAY,SAAS,cAAc,OAAO,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC5F,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IACnD,YAAY,OAAe,EAAE,OAAiB,EAAE,QAAiB;QAC7D,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;CACJ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function ensureDir(dirPath: string, dryRun?: boolean): void;
|
|
2
|
+
/**
|
|
3
|
+
* Writes content to a file atomically by using a temporary file.
|
|
4
|
+
* This prevents data corruption during unexpected system failures.
|
|
5
|
+
*/
|
|
6
|
+
export declare function writeTextFile(filePath: string, content: string, dryRun?: boolean): void;
|
|
7
|
+
export declare function appendFile(filePath: string, content: string, dryRun?: boolean): void;
|
|
8
|
+
export declare function writeJsonFile(filePath: string, value: unknown, dryRun?: boolean): void;
|
|
9
|
+
export declare function runCommandQuiet(command: string, args: string[], cwd: string): void;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { execFileSync } from "child_process";
|
|
2
|
+
import fs from "fs";
|
|
3
|
+
import path from "path";
|
|
4
|
+
import { logger } from "../observability/logger.js";
|
|
5
|
+
export function ensureDir(dirPath, dryRun = false) {
|
|
6
|
+
if (!fs.existsSync(dirPath)) {
|
|
7
|
+
if (dryRun) {
|
|
8
|
+
logger.info(`[DRY RUN] Would create directory: ${dirPath}`);
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
fs.mkdirSync(dirPath, { recursive: true });
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Writes content to a file atomically by using a temporary file.
|
|
17
|
+
* This prevents data corruption during unexpected system failures.
|
|
18
|
+
*/
|
|
19
|
+
export function writeTextFile(filePath, content, dryRun = false) {
|
|
20
|
+
if (dryRun) {
|
|
21
|
+
logger.info(`[DRY RUN] Would write file: ${filePath}`);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const dir = path.dirname(filePath);
|
|
25
|
+
ensureDir(dir);
|
|
26
|
+
const tempPath = `${filePath}.${Math.random().toString(36).slice(2, 9)}.tmp`;
|
|
27
|
+
const finalContent = content.endsWith("\n") ? content : `${content}\n`;
|
|
28
|
+
try {
|
|
29
|
+
fs.writeFileSync(tempPath, finalContent, "utf8");
|
|
30
|
+
fs.renameSync(tempPath, filePath);
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
if (fs.existsSync(tempPath))
|
|
34
|
+
fs.unlinkSync(tempPath);
|
|
35
|
+
throw err;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function appendFile(filePath, content, dryRun = false) {
|
|
39
|
+
if (dryRun) {
|
|
40
|
+
logger.info(`[DRY RUN] Would append to file: ${filePath}`);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
ensureDir(path.dirname(filePath));
|
|
44
|
+
// Atomic append: oku → ekle → atomic yaz
|
|
45
|
+
const existing = fs.existsSync(filePath) ? fs.readFileSync(filePath, "utf8") : "";
|
|
46
|
+
writeTextFile(filePath, existing + content);
|
|
47
|
+
}
|
|
48
|
+
export function writeJsonFile(filePath, value, dryRun = false) {
|
|
49
|
+
writeTextFile(filePath, JSON.stringify(value, null, 2), dryRun);
|
|
50
|
+
}
|
|
51
|
+
export function runCommandQuiet(command, args, cwd) {
|
|
52
|
+
execFileSync(command, args, { cwd, stdio: "ignore" });
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=fs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../../../../shared/src/modules/primitives/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,MAAM,GAAG,KAAK;IACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,CAAC,qCAAqC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,OAAe,EAAE,MAAM,GAAG,KAAK;IAC3E,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO;IACX,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,SAAS,CAAC,GAAG,CAAC,CAAC;IAEf,MAAM,QAAQ,GAAG,GAAG,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC;IAEvE,IAAI,CAAC;QACD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QACjD,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,GAAG,CAAC;IACd,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAgB,EAAE,OAAe,EAAE,MAAM,GAAG,KAAK;IACxE,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QAC3D,OAAO;IACX,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClC,yCAAyC;IACzC,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,KAAc,EAAE,MAAM,GAAG,KAAK;IAC1E,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,IAAc,EAAE,GAAW;IACxE,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC1D,CAAC"}
|