mirror of
https://github.com/affaan-m/ECC.git
synced 2026-09-11 20:27:58 +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
@@ -0,0 +1,22 @@
|
||||
# ECC for AdaL CLI
|
||||
|
||||
This directory contains the ECC (Everything Claude Code) configuration for the AdaL CLI harness.
|
||||
|
||||
## What is installed
|
||||
|
||||
- `rules/ecc/` — shared coding rules and guidelines
|
||||
- `skills/ecc/` — reusable skills
|
||||
- `commands/` — slash commands
|
||||
- `AGENTS.md` — agent instructions
|
||||
|
||||
## Manual install
|
||||
|
||||
```bash
|
||||
bash ./install.sh --target adal --profile minimal
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- The `adal` target installs into the project-level `./.adal/` directory.
|
||||
- AdaL's own config (`~/.adal/settings.json`, MCP servers, plugins) is **not** touched by ECC install.
|
||||
- Use `npx ecc doctor --target adal` to check install health.
|
||||
@@ -19,7 +19,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [],
|
||||
"defaultInstall": true,
|
||||
@@ -47,7 +48,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [],
|
||||
"defaultInstall": true,
|
||||
@@ -75,7 +77,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [],
|
||||
"defaultInstall": true,
|
||||
@@ -121,7 +124,8 @@
|
||||
"scripts/setup-package-manager.js",
|
||||
".hermes",
|
||||
".openclaw",
|
||||
".kimi"
|
||||
".kimi",
|
||||
".adal"
|
||||
],
|
||||
"targets": [
|
||||
"claude",
|
||||
@@ -137,7 +141,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [],
|
||||
"defaultInstall": true,
|
||||
@@ -294,7 +299,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [
|
||||
"platform-configs"
|
||||
@@ -369,7 +375,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [
|
||||
"skill-unified-memory"
|
||||
@@ -627,7 +634,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
],
|
||||
"dependencies": [
|
||||
"platform-configs"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
"url": "https://github.com/affaan-m/ECC/issues"
|
||||
},
|
||||
"files": [
|
||||
".adal/",
|
||||
".agents/",
|
||||
".claude-plugin/",
|
||||
".codex/",
|
||||
|
||||
@@ -31,7 +31,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
]
|
||||
},
|
||||
"profile": {
|
||||
|
||||
@@ -61,7 +61,8 @@
|
||||
"zed",
|
||||
"hermes",
|
||||
"openclaw",
|
||||
"kimi"
|
||||
"kimi",
|
||||
"adal"
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
@@ -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