mirror of
https://github.com/affaan-m/ECC.git
synced 2026-09-27 03:55:03 +02:00
feat(install): add AdaL CLI install target
Following the hermes/openclaw (#2433) and kimi (#2441) adapter recipe. What's included (adal-project adapter, project kind, ./.adal root, same shape as kimi-project/joycode-project): - scripts/lib/install-targets/adal-project.js — 10-line project-kind adapter targeting ./.adal - Registry + helpers platform-ownership wiring - adal target on the 5 shared modules (rules-core, agents-core, commands-core, platform-configs, workflow-quality) + SUPPORTED_INSTALL_TARGETS + legacy-compat module - .adal in platform-configs paths - Both schema enums (install-modules, ecc-install-config), npm files allowlist, installer help text, .adal/README.md stub AdaL (adalagent.ai) is a terminal-based AI coding agent (by SylphAI) built on AdalFlow, with native MCP support and project-scoped config under ./.adal/ (skills, custom tools, memory) plus a root-level AGENTS.md instructions file — matching the shape ECC already installs into other AGENTS.md-based harnesses (Codex, OpenCode, Kimi). Verified: full suite matches main's baseline (3334 passed, same pre-existing failures unrelated to this change — OpenCode build/npm-pack surface tests requiring build tooling not present in this sandbox); catalog check passes (67 agents / 94 commands / 281 skills); dry-run resolves Target: adal / Adapter: adal-project / root ./.adal with all 5 modules planned; doctor reports OK after a real install; uninstall cleanly reverses all 458 operations. Co-Authored-By: AdaL <adal@sylph.ai>
This commit is contained in:
committed by
haelyra
co-authored by
AdaL
parent
7c2bc54be2
commit
1444239eec
@@ -47,6 +47,7 @@ Targets:
|
||||
hermes - Install shared rules/skills/commands into ~/.hermes/
|
||||
kimi - Install Kimi Code project instructions, skills, and MCP config into ./.kimi-code/ (ECC hooks not configured)
|
||||
openclaw - Install shared rules/skills/commands into ~/.openclaw/
|
||||
adal - Install shared rules/skills/commands into ./.adal/
|
||||
|
||||
Options:
|
||||
--profile <name> Resolve and install a manifest profile
|
||||
|
||||
@@ -5,7 +5,7 @@ const { getInstallTargetAdapter, planInstallTargetScaffold } = require('./instal
|
||||
const { resolveInvocationEnvironment } = require('./invocation-environment');
|
||||
|
||||
const DEFAULT_REPO_ROOT = path.join(__dirname, '../..');
|
||||
const SUPPORTED_INSTALL_TARGETS = ['claude', 'claude-project', 'cursor', 'antigravity', 'codex', 'gemini', 'opencode', 'codebuddy', 'joycode', 'qwen', 'zed', 'hermes', 'openclaw', 'kimi'];
|
||||
const SUPPORTED_INSTALL_TARGETS = ['claude', 'claude-project', 'cursor', 'antigravity', 'codex', 'gemini', 'opencode', 'codebuddy', 'joycode', 'qwen', 'zed', 'hermes', 'openclaw', 'kimi', 'adal'];
|
||||
const COMPONENT_FAMILY_PREFIXES = {
|
||||
baseline: 'baseline:',
|
||||
language: 'lang:',
|
||||
@@ -99,6 +99,13 @@ const LEGACY_COMPAT_BASE_MODULE_IDS_BY_TARGET = Object.freeze({
|
||||
'platform-configs',
|
||||
'workflow-quality',
|
||||
],
|
||||
adal: [
|
||||
'rules-core',
|
||||
'agents-core',
|
||||
'commands-core',
|
||||
'platform-configs',
|
||||
'workflow-quality',
|
||||
],
|
||||
});
|
||||
const LEGACY_LANGUAGE_ALIAS_TO_CANONICAL = Object.freeze({
|
||||
c: 'c',
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
const { createInstallTargetAdapter } = require('./helpers');
|
||||
|
||||
module.exports = createInstallTargetAdapter({
|
||||
id: 'adal-project',
|
||||
target: 'adal',
|
||||
kind: 'project',
|
||||
rootSegments: ['.adal'],
|
||||
installStatePathSegments: ['ecc-install-state.json'],
|
||||
nativeRootRelativePath: '.adal',
|
||||
});
|
||||
@@ -16,6 +16,7 @@ const PLATFORM_SOURCE_PATH_OWNERS = Object.freeze({
|
||||
'.codebuddy': 'codebuddy',
|
||||
'.qwen': 'qwen',
|
||||
'.zed': 'zed',
|
||||
'.adal': 'adal',
|
||||
});
|
||||
|
||||
function normalizeRelativePath(relativePath) {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
const adalProject = require('./adal-project');
|
||||
const antigravityProject = require('./antigravity-project');
|
||||
const claudeHome = require('./claude-home');
|
||||
const claudeProject = require('./claude-project');
|
||||
@@ -29,6 +30,7 @@ const ADAPTERS = Object.freeze([
|
||||
kimiProject,
|
||||
qwenHome,
|
||||
zedProject,
|
||||
adalProject,
|
||||
]);
|
||||
|
||||
function listInstallTargetAdapters() {
|
||||
|
||||
Reference in New Issue
Block a user