feat(cli): extract Obelisk runtime into npm package

Add @obelisk-apps/cli with the existing build, search, query, and attune contract plus official skill installation.

Separate the docs-only skill artifact, bootstrap installer, release layout, cross-platform CI, and package-level regression coverage.
This commit is contained in:
tommy0103
2026-07-16 17:26:23 +08:00
parent 49158e9b9c
commit 90191e4604
64 changed files with 1112 additions and 745 deletions
+13
View File
@@ -0,0 +1,13 @@
import { cpSync, mkdirSync, rmSync } from 'node:fs';
import { dirname, resolve } from 'node:path';
import { fileURLToPath } from 'node:url';
const repoRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');
const source = resolve(repoRoot, 'skill-doc');
const target = resolve(repoRoot, 'dist/obelisk-skill');
rmSync(target, { recursive: true, force: true });
mkdirSync(target, { recursive: true });
cpSync(resolve(source, 'SKILL.md'), resolve(target, 'SKILL.md'));
cpSync(resolve(source, 'references'), resolve(target, 'references'), { recursive: true });
cpSync(resolve(repoRoot, 'packaging/skill-package.json'), resolve(target, 'package.json'));
+1 -1
View File
@@ -5,7 +5,7 @@ SKILL_ARTIFACT="dist/obelisk-skill"
SKILL_REPO="dist/obelisk-skill-repo"
REMOTE="git@github.com:tommy0103/obelisk-skill.git"
if [ ! -d "$SKILL_ARTIFACT/scripts" ]; then
if [ ! -f "$SKILL_ARTIFACT/SKILL.md" ] || [ ! -d "$SKILL_ARTIFACT/references" ]; then
echo "Error: run 'npm run build:skill' first" >&2
exit 1
fi
+7 -3
View File
@@ -6,9 +6,13 @@ layer over local Claude Code and Codex session history.
## Install
```bash
npx skills add tommy0103/obelisk-skill
npm install --global @obelisk-apps/cli
obelisk install
```
The CLI is the executable runtime. This repository contains only the agent
instructions and progressive-disclosure references.
Then in any Claude Code session:
```
@@ -17,7 +21,7 @@ Then in any Claude Code session:
## Source
This repository is **auto-published** from the compiled skill artifact of
This repository is **auto-published** from the docs-only skill artifact of
[tommy0103/obelisk](https://github.com/tommy0103/obelisk). Do not open pull
requests here — contribute to the source repo instead.
@@ -25,5 +29,5 @@ requests here — contribute to the source repo instead.
MIT — see [LICENSE](LICENSE) in this repository. The
[source repository](https://github.com/tommy0103/obelisk) is AGPL-3.0; this
compiled skill artifact is explicitly relicensed under MIT by the copyright
skill documentation artifact is explicitly relicensed under MIT by the copyright
holder.
+1 -2
View File
@@ -1,7 +1,6 @@
{
"name": "obelisk-skill",
"version": "0.1.0",
"type": "module",
"description": "Obelisk skill artifact — readable compiled Core (providers + persist + runtime) over local Claude Code and Codex history. Built by `npm run build:skill`; sources live in the main repo.",
"description": "Obelisk agent skill documentation for the @obelisk-apps/cli runtime. Built by `npm run build:skill`; sources live in the main repo.",
"license": "MIT"
}
+1 -1
View File
@@ -15,7 +15,7 @@ if [ "$TARGET_DIR" = "/" ] || [ "$TARGET_DIR" = "." ] || [ "$TARGET_DIR" = "$ROO
exit 1
fi
for required in SKILL.md package.json references scripts; do
for required in SKILL.md package.json references; do
if [ ! -e "$ARTIFACT_DIR/$required" ]; then
echo "Error: skill artifact missing $required at $ARTIFACT_DIR" >&2
exit 1