Skip to content

Commit 6d6f044

Browse files
committed
feat: HEM CLI v1.0.0-Pleasure-through-Creation
1 parent 3f908a3 commit 6d6f044

115 files changed

Lines changed: 21580 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/release.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches: [main]
6+
tags: ['v*']
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
test:
13+
runs-on: ubuntu-latest
14+
strategy:
15+
matrix:
16+
node-version: [18, 20, 22]
17+
steps:
18+
- uses: actions/checkout@v4
19+
- uses: actions/setup-node@v4
20+
with:
21+
node-version: ${{ matrix.node-version }}
22+
- run: npm ci
23+
- run: npm run build
24+
- run: npm test
25+
26+
publish:
27+
needs: test
28+
if: startsWith(github.ref, 'refs/tags/v')
29+
runs-on: ubuntu-latest
30+
permissions:
31+
contents: read
32+
id-token: write
33+
steps:
34+
- uses: actions/checkout@v4
35+
- uses: actions/setup-node@v4
36+
with:
37+
node-version: 22
38+
registry-url: https://registry.npmjs.org
39+
- run: npm ci
40+
- run: npm run build
41+
- run: npm publish --provenance --access public
42+
env:
43+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
44+
45+
notify:
46+
needs: publish
47+
if: startsWith(github.ref, 'refs/tags/v')
48+
runs-on: ubuntu-latest
49+
steps:
50+
- name: Notify method repo of CLI release
51+
uses: peter-evans/repository-dispatch@v3
52+
with:
53+
token: ${{ secrets.METHOD_REPO_TOKEN }}
54+
repository: hedonistic-io/method
55+
event-type: cli-release
56+
client-payload: '{"tag": "${{ github.ref_name }}", "sha": "${{ github.sha }}"}'

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
node_modules/
2+
dist/
3+
*.tsbuildinfo
4+
.DS_Store
5+
*.map
6+
coverage/
7+
.env
8+
.env.*

.npmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
access=public

README.md

Lines changed: 219 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,219 @@
1+
# HEM CLI
2+
3+
The command-line interface for the **Hedonistic Method** (HEM) -- an AI-native creation methodology for governing agent-driven software projects. HEM provides structured governance, quality measurement, project validation, and multi-engine orchestration from your terminal.
4+
5+
## Install
6+
7+
```bash
8+
npm install -g @hedonistic-io/hem
9+
```
10+
11+
Or with a project-local install:
12+
13+
```bash
14+
npm install --save-dev @hedonistic-io/hem
15+
npx hem --help
16+
```
17+
18+
## Commands
19+
20+
### Project Setup
21+
22+
```bash
23+
# Initialize a new HEM project in the current directory
24+
hem init
25+
26+
# Initialize with a specific profile
27+
hem init --profile saas-product
28+
29+
# Initialize in a target directory
30+
hem init ./my-project
31+
32+
# Guided first-time setup wizard
33+
hem wizard
34+
```
35+
36+
### Daily Workflow
37+
38+
```bash
39+
# Project health dashboard
40+
hem status
41+
hem status --json
42+
43+
# Calculate the Hedonistic Index (quality score)
44+
hem measure
45+
hem measure quick
46+
hem measure --json
47+
48+
# Run governance validation checks
49+
hem validate
50+
hem validate --json
51+
```
52+
53+
### Signing and Verification
54+
55+
```bash
56+
# Sign a file with your HEM key
57+
hem sign file ./COMPACT.md
58+
59+
# Verify a signed file
60+
hem sign verify ./COMPACT.md.sig
61+
62+
# Manage signing keys
63+
hem sign keys
64+
hem sign generate
65+
```
66+
67+
### Estimation and Calibration
68+
69+
```bash
70+
# View or adjust estimates
71+
hem estimate
72+
73+
# Record actuals against estimates
74+
hem estimate actuals
75+
76+
# View calibration data
77+
hem estimate calibration
78+
79+
# Harvest calibration entries from completed tasks
80+
hem estimate harvest
81+
```
82+
83+
### AI Engine Orchestration
84+
85+
```bash
86+
# List available AI engines (Claude, Codex, Gemini, etc.)
87+
hem engines
88+
hem engines available
89+
90+
# Launch a sub-agent on a specific engine
91+
hem launch claude "Implement the auth module"
92+
```
93+
94+
### Skills
95+
96+
```bash
97+
# List available HEM skills
98+
hem skills list
99+
100+
# Show details for a specific skill
101+
hem skills info build
102+
```
103+
104+
### Changelog Management
105+
106+
```bash
107+
# Show the changelog
108+
hem changelog show
109+
110+
# Add an entry
111+
hem changelog add
112+
113+
# Show the latest version entry
114+
hem changelog latest
115+
```
116+
117+
### Shell Completions
118+
119+
```bash
120+
# Generate completions for your shell
121+
hem completions fish
122+
hem completions zsh
123+
hem completions bash
124+
125+
# Auto-install completions
126+
hem completions install
127+
```
128+
129+
### MCP Server
130+
131+
```bash
132+
# Start the HEM MCP server (stdio transport)
133+
hem serve
134+
```
135+
136+
### Active Monitoring
137+
138+
```bash
139+
# Run the steering watchdog (continuous governance monitoring)
140+
hem watch
141+
hem watch --json
142+
```
143+
144+
### Additional Commands
145+
146+
```bash
147+
# Manage tasks
148+
hem tasks list|add|complete|actuals|focus|progress
149+
150+
# Manage compacts (project contracts)
151+
hem compact show|create|vision|scope|criteria|complete
152+
153+
# Generate role-scoped briefs
154+
hem brief show|export --role steward --budget 4000
155+
156+
# Session memory management
157+
hem memory list|show|append|distill
158+
159+
# Multi-project management
160+
hem projects list|add|remove|switch|scan
161+
162+
# Profile management
163+
hem profile show|list|set|info
164+
165+
# Escalation checks
166+
hem escalation check|thresholds
167+
168+
# One-shot steering analysis
169+
hem steer analyze|prompt|check
170+
171+
# Lint governance documents
172+
hem lint compact|tasks|accord|amendment
173+
174+
# Rejection tracking
175+
hem reject list|create|resolve|summary
176+
177+
# Knowledge base
178+
hem knowledge list|search|show|stages|add|corroborate
179+
180+
# Archive management
181+
hem archive list|show|search|export
182+
183+
# Template rendering
184+
hem template list|show|render
185+
186+
# Version info
187+
hem version
188+
```
189+
190+
## How It Works
191+
192+
HEM CLI wraps `@hedonistic-io/hem-core`, which provides:
193+
194+
- **Profile system** -- per-project behavior profiles (saas-product, hardware, open-source, etc.)
195+
- **Hedonistic Index** -- a composite quality score measuring session health, steering quality, agent performance, and outcome quality
196+
- **Governance validation** -- checks for COMPACT.md, TASKS.md, proper git workflow, and method compliance
197+
- **Estimation calibration** -- track estimate-vs-actual ratios and improve future estimates
198+
- **Multi-engine orchestration** -- launch and manage agents across Claude, Codex, Gemini, Copilot, and more
199+
- **Cryptographic signing** -- sign and verify governance documents
200+
201+
## Quality Priority
202+
203+
HEM enforces a strict quality priority in all work:
204+
205+
1. Correctness
206+
2. Security
207+
3. Simplicity
208+
4. Maintainability
209+
5. Performance
210+
211+
## The Method
212+
213+
The Hedonistic Method is a universal creation methodology built for AI-native development. It covers the full project lifecycle from genesis through integration, with structured governance that scales from solo projects to multi-agent orchestration.
214+
215+
Learn more at the [method repository](https://github.com/hedonistic-io/method).
216+
217+
## License
218+
219+
MIT - Hedonistic IO LLC

package.json

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"name": "@hedonistic-io/hem",
3+
"version": "1.0.0",
4+
"description": "HEM CLI — init, validate, measure, and manage Hedonistic Method projects",
5+
"type": "module",
6+
"bin": {
7+
"hem": "packages/hem-cli/dist/cli.js"
8+
},
9+
"scripts": {
10+
"build": "npm run build:core && npm run build:cli",
11+
"build:core": "cd packages/hem-core && npx tsc",
12+
"build:cli": "cd packages/hem-cli && npx tsc",
13+
"test": "npm run test:core && npm run test:cli",
14+
"test:core": "cd packages/hem-core && npx vitest run",
15+
"test:cli": "cd packages/hem-cli && npx vitest run",
16+
"dev": "cd packages/hem-cli && npx tsc --watch",
17+
"prepublishOnly": "npm run build"
18+
},
19+
"workspaces": [
20+
"packages/hem-core",
21+
"packages/hem-cli"
22+
],
23+
"keywords": [
24+
"hem",
25+
"hedonistic",
26+
"engineering",
27+
"methodology",
28+
"ai",
29+
"agents",
30+
"cli",
31+
"governance",
32+
"creation"
33+
],
34+
"author": "Hedonistic IO LLC",
35+
"license": "MIT",
36+
"repository": {
37+
"type": "git",
38+
"url": "https://github.com/hedonistic-io/method-hem-cli.git"
39+
},
40+
"homepage": "https://github.com/hedonistic-io/method-hem-cli#readme",
41+
"bugs": {
42+
"url": "https://github.com/hedonistic-io/method-hem-cli/issues"
43+
},
44+
"engines": {
45+
"node": ">=18.0.0"
46+
}
47+
}

packages/hem-cli/package.json

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"name": "@hedonistic-io/hem-cli",
3+
"version": "1.0.0",
4+
"description": "The Hedonistic Method — AI-native creation methodology CLI",
5+
"type": "module",
6+
"bin": {
7+
"hem": "dist/cli.js"
8+
},
9+
"main": "dist/cli.js",
10+
"scripts": {
11+
"build": "tsc",
12+
"dev": "tsc --watch",
13+
"start": "node dist/cli.js",
14+
"test": "vitest run",
15+
"test:watch": "vitest"
16+
},
17+
"keywords": [
18+
"hem",
19+
"hedonistic",
20+
"engineering",
21+
"ai",
22+
"agents",
23+
"methodology",
24+
"cli"
25+
],
26+
"author": "Hedonistic IO LLC",
27+
"license": "MIT",
28+
"repository": {
29+
"type": "git",
30+
"url": "https://github.com/hedonistic-io/method-hem-cli.git",
31+
"directory": "packages/hem-cli"
32+
},
33+
"dependencies": {
34+
"@hedonistic-io/hem-core": "workspace:*",
35+
"@types/react": "^19.2.14",
36+
"ink": "^6.8.0",
37+
"ink-big-text": "^2.0.0",
38+
"ink-gradient": "^4.0.0",
39+
"ink-select-input": "^6.2.0",
40+
"ink-spinner": "^5.0.0",
41+
"ink-text-input": "^6.0.0",
42+
"react": "^19.2.4"
43+
},
44+
"devDependencies": {
45+
"@types/node": "^22.0.0",
46+
"typescript": "^5.7.0",
47+
"vitest": "^3.0.0"
48+
}
49+
}

0 commit comments

Comments
 (0)