CLI command to scaffold the spel agent + skill for browser automation.
Supports multiple agent loop targets via --loop:
Supports test framework flavours via --flavour:
Also generates:
Usage: spel init-agents --ns my-app spel init-agents --ns my-app --loop=claude spel init-agents --ns my-app --flavour=clojure-test spel init-agents --ns my-app --no-tests spel init-agents --dry-run
CLI command to scaffold the spel agent + skill for browser automation. Supports multiple agent loop targets via --loop: - opencode (default) — .opencode/agents/, .opencode/skills/ - claude — .claude/agents/, .claude/skills/ Supports test framework flavours via --flavour: - lazytest (default) — defdescribe/it/expect from spel.allure, :context fixtures - clojure-test — deftest/testing/is from clojure.test, use-fixtures Also generates: - test-e2e/<ns>/e2e/ — seed test (path derived from --ns) Usage: spel init-agents --ns my-app spel init-agents --ns my-app --loop=claude spel init-agents --ns my-app --flavour=clojure-test spel init-agents --ns my-app --no-tests spel init-agents --dry-run
(-main & args)CLI entry point. Scaffolds agent + skill for browser automation.
CLI entry point. Scaffolds agent + skill for browser automation.
(find-scaffolded-skills)(find-scaffolded-skills start-dir)Walks up from start-dir (default: the process working directory) and returns
[root skills] for the nearest directory that holds a scaffolded skill tree,
or nil when none is found within skill-search-depth levels.
Walks up from `start-dir` (default: the process working directory) and returns `[root skills]` for the nearest directory that holds a scaffolded skill tree, or nil when none is found within `skill-search-depth` levels.
(scaffolded-skills dir)Scaffolded spel skills sitting directly under dir, one entry per loop target
whose SKILL.md exists (.opencode, .claude, .agents).
Each entry includes {:loop-target :path :file :version :references}; every existing reference shipped by spel carries its independently checked release marker.
Scaffolded spel skills sitting directly under `dir`, one entry per loop target
whose SKILL.md exists (.opencode, .claude, .agents).
Each entry includes {:loop-target :path :file :version :references}; every
existing reference shipped by spel carries its independently checked release
marker.(skill-drift-warning)(skill-drift-warning start-dir)Warning text when the nearest scaffolded skill tree or any of its generated references came from a spel version other than the running one, else nil.
SKILL.md pins the release in frontmatter; every generated reference pins it in a first-line HTML comment. The check reads only that line, even for large API and report references. Never throws.
Warning text when the nearest scaffolded skill tree or any of its generated references came from a spel version other than the running one, else nil. SKILL.md pins the release in frontmatter; every generated reference pins it in a first-line HTML comment. The check reads only that line, even for large API and report references. Never throws.
(warn-on-skill-drift!)(warn-on-skill-drift! start-dir)Prints skill-drift-warning to stderr, so JSON stdout stays machine-readable.
Opt out with SPEL_SKILL_CHECK=false. Never throws.
Prints `skill-drift-warning` to stderr, so JSON stdout stays machine-readable. Opt out with `SPEL_SKILL_CHECK=false`. Never throws.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |