atabey 0.1.1-beta → 0.1.3
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/README.md +145 -79
- 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/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 +56 -23
- package/dist/atabey/src/cli/commands/mcp.js.map +1 -1
- package/dist/atabey/src/cli/commands/orchestrate.d.ts +6 -6
- package/dist/atabey/src/cli/index.js +1 -1
- package/dist/shared/src/agent-identity.d.ts +1 -34
- package/dist/shared/src/agent-identity.js +1 -76
- package/dist/shared/src/agent-identity.js.map +1 -1
- package/dist/shared/src/api-catalog.d.ts +1 -57
- package/dist/shared/src/api-catalog.js +1 -253
- package/dist/shared/src/api-catalog.js.map +1 -1
- package/dist/shared/src/audit-chain.d.ts +1 -80
- package/dist/shared/src/audit-chain.js +1 -261
- package/dist/shared/src/audit-chain.js.map +1 -1
- package/dist/shared/src/audit.d.ts +1 -121
- package/dist/shared/src/audit.js +1 -321
- package/dist/shared/src/audit.js.map +1 -1
- package/dist/shared/src/constants.d.ts +1 -150
- package/dist/shared/src/constants.js +1 -211
- package/dist/shared/src/constants.js.map +1 -1
- package/dist/shared/src/database.d.ts +1 -6
- package/dist/shared/src/database.js +1 -15
- 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 -93
- package/dist/shared/src/file-lock.js +1 -239
- 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 -31
- package/dist/shared/src/index.js +2 -31
- package/dist/shared/src/index.js.map +1 -1
- package/dist/shared/src/job-queue.d.ts +1 -76
- package/dist/shared/src/job-queue.js +1 -199
- 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 -31
- package/dist/shared/src/logger.js +1 -152
- package/dist/shared/src/logger.js.map +1 -1
- package/dist/shared/src/memory-prune.d.ts +1 -18
- package/dist/shared/src/memory-prune.js +1 -47
- package/dist/shared/src/memory-prune.js.map +1 -1
- package/dist/shared/src/migrations.d.ts +1 -69
- package/dist/shared/src/migrations.js +1 -393
- package/dist/shared/src/migrations.js.map +1 -1
- 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 -39
- package/dist/shared/src/otel.js +1 -92
- package/dist/shared/src/otel.js.map +1 -1
- package/dist/shared/src/outbound-http.d.ts +1 -32
- package/dist/shared/src/outbound-http.js +1 -87
- package/dist/shared/src/outbound-http.js.map +1 -1
- package/dist/shared/src/pii.d.ts +1 -70
- package/dist/shared/src/pii.js +1 -275
- 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 -171
- 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 -68
- package/dist/shared/src/retention.js +1 -217
- 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 -142
- package/dist/shared/src/sandbox-fs.js.map +1 -1
- package/dist/shared/src/sandbox-runtime.d.ts +1 -78
- package/dist/shared/src/sandbox-runtime.js +1 -281
- 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 -99
- package/dist/shared/src/secrets.js +1 -370
- package/dist/shared/src/secrets.js.map +1 -1
- package/dist/shared/src/storage.d.ts +1 -341
- package/dist/shared/src/storage.js +1 -1003
- 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 -34
- package/dist/shared/src/time.js.map +1 -1
- package/dist/shared/src/tls.d.ts +1 -87
- package/dist/shared/src/tls.js +1 -153
- package/dist/shared/src/tls.js.map +1 -1
- package/dist/shared/src/tokenizer.d.ts +1 -54
- package/dist/shared/src/tokenizer.js +1 -271
- package/dist/shared/src/tokenizer.js.map +1 -1
- 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 -228
- 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 -4
|
@@ -1,212 +1,2 @@
|
|
|
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);
|
|
1
|
+
export * from "./modules/primitives/constants.js";
|
|
212
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../shared/src/constants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../shared/src/constants.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
|
|
@@ -1,16 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export const databaseHolder = {
|
|
3
|
-
setDB(db) {
|
|
4
|
-
globalDB = db;
|
|
5
|
-
},
|
|
6
|
-
getDB() {
|
|
7
|
-
if (!globalDB) {
|
|
8
|
-
throw new Error("Atabey Shared Database has not been initialized. Please call databaseHolder.setDB(db) at startup.");
|
|
9
|
-
}
|
|
10
|
-
return globalDB;
|
|
11
|
-
},
|
|
12
|
-
hasDB() {
|
|
13
|
-
return globalDB !== null;
|
|
14
|
-
}
|
|
15
|
-
};
|
|
1
|
+
export * from "./modules/storage/database.js";
|
|
16
2
|
//# sourceMappingURL=database.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../../../shared/src/database.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../../../shared/src/database.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
|
|
@@ -1,46 +1 @@
|
|
|
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
|
-
}
|
|
1
|
+
export * from "./modules/primitives/errors.js";
|
|
@@ -1,69 +1,2 @@
|
|
|
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
|
-
}
|
|
1
|
+
export * from "./modules/primitives/errors.js";
|
|
69
2
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../shared/src/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../shared/src/errors.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
|
|
@@ -1,93 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Atomic File-Based Locking — OS-level exclusive create via open('wx').
|
|
3
|
-
*
|
|
4
|
-
* Replaces check-then-act lock races. No Redis/Redlock required.
|
|
5
|
-
*
|
|
6
|
-
* Pattern:
|
|
7
|
-
* resource → .atabey/locks/<relative>.lock (created with O_EXCL / 'wx')
|
|
8
|
-
* holder writes JSON metadata after exclusive create
|
|
9
|
-
* release unlinks the lock file
|
|
10
|
-
*
|
|
11
|
-
* Stale locks (TTL exceeded) are reclaimed atomically when possible.
|
|
12
|
-
*/
|
|
13
|
-
export interface FileLockOptions {
|
|
14
|
-
/** Base directory for lock files. Default: `.atabey/locks` under cwd or projectRoot. */
|
|
15
|
-
locksDir?: string;
|
|
16
|
-
/** Project root used to relativize resource paths. Default: process.cwd(). */
|
|
17
|
-
projectRoot?: string;
|
|
18
|
-
/** Lock TTL in ms. Stale locks may be stolen after this. Default: 5 minutes. */
|
|
19
|
-
ttlMs?: number;
|
|
20
|
-
/** Retry interval when waiting for a lock. Default: 50ms. */
|
|
21
|
-
retryMs?: number;
|
|
22
|
-
/** Max wait when using acquireAsync. Default: 10s. */
|
|
23
|
-
timeoutMs?: number;
|
|
24
|
-
}
|
|
25
|
-
export interface FileLockMeta {
|
|
26
|
-
ownerId: string;
|
|
27
|
-
resource: string;
|
|
28
|
-
acquiredAt: string;
|
|
29
|
-
expiresAt: string;
|
|
30
|
-
reason?: string;
|
|
31
|
-
pid: number;
|
|
32
|
-
hostname: string;
|
|
33
|
-
}
|
|
34
|
-
export declare class AtomicFileLock {
|
|
35
|
-
private readonly locksDir;
|
|
36
|
-
private readonly projectRoot;
|
|
37
|
-
private readonly ttlMs;
|
|
38
|
-
private readonly retryMs;
|
|
39
|
-
private readonly timeoutMs;
|
|
40
|
-
constructor(options?: FileLockOptions);
|
|
41
|
-
/** Absolute path of the lock file for a resource. */
|
|
42
|
-
getLockPath(resource: string): string;
|
|
43
|
-
/**
|
|
44
|
-
* Try to acquire a lock once (non-blocking).
|
|
45
|
-
* Uses atomic exclusive file create (`wx` = O_CREAT | O_EXCL | O_WRONLY).
|
|
46
|
-
*/
|
|
47
|
-
tryAcquire(resource: string, ownerId: string, reason?: string, _reclaimDepth?: number): {
|
|
48
|
-
acquired: boolean;
|
|
49
|
-
meta?: FileLockMeta;
|
|
50
|
-
heldBy?: FileLockMeta;
|
|
51
|
-
};
|
|
52
|
-
/**
|
|
53
|
-
* Acquire with async retry until timeout.
|
|
54
|
-
*/
|
|
55
|
-
acquireAsync(resource: string, ownerId: string, options?: {
|
|
56
|
-
reason?: string;
|
|
57
|
-
timeoutMs?: number;
|
|
58
|
-
retryMs?: number;
|
|
59
|
-
}): Promise<FileLockMeta>;
|
|
60
|
-
/**
|
|
61
|
-
* Release lock only if owned by ownerId (or force=true).
|
|
62
|
-
*/
|
|
63
|
-
release(resource: string, ownerId: string, force?: boolean): boolean;
|
|
64
|
-
isLocked(resource: string): FileLockMeta | null;
|
|
65
|
-
/**
|
|
66
|
-
* Run `fn` while holding the lock.
|
|
67
|
-
* ALWAYS releases in `finally` even if `fn` throws (disk full, parse errors, etc.).
|
|
68
|
-
* Without this, a leftover `.lock` file would deadlock every subsequent writer until TTL.
|
|
69
|
-
*
|
|
70
|
-
* Prefer this API over bare acquire/release for any mutating work.
|
|
71
|
-
*/
|
|
72
|
-
withLock<T>(resource: string, ownerId: string, fn: () => Promise<T> | T, options?: {
|
|
73
|
-
reason?: string;
|
|
74
|
-
timeoutMs?: number;
|
|
75
|
-
}): Promise<T>;
|
|
76
|
-
/**
|
|
77
|
-
* Synchronous withLock — same try/finally release guarantee.
|
|
78
|
-
*/
|
|
79
|
-
withLockSync<T>(resource: string, ownerId: string, fn: () => T, options?: {
|
|
80
|
-
reason?: string;
|
|
81
|
-
}): T;
|
|
82
|
-
private reclaimIfStale;
|
|
83
|
-
/**
|
|
84
|
-
* True when an existing lock file may be safely stolen: unparseable/empty
|
|
85
|
-
* (corrupt, e.g. crashed mid-write) or past its TTL.
|
|
86
|
-
*/
|
|
87
|
-
private isReclaimable;
|
|
88
|
-
private isExpired;
|
|
89
|
-
private readMeta;
|
|
90
|
-
private forceRemove;
|
|
91
|
-
}
|
|
92
|
-
/** Convenience: lock under project `.atabey/locks`. */
|
|
93
|
-
export declare function createProjectFileLock(projectRoot: string, options?: Omit<FileLockOptions, "projectRoot">): AtomicFileLock;
|
|
1
|
+
export * from "./modules/concurrency/file-lock.js";
|