{"id":48965610,"url":"https://github.com/scottconverse/stack","last_synced_at":"2026-04-18T04:08:10.257Z","repository":{"id":351726849,"uuid":"1212203251","full_name":"scottconverse/stack","owner":"scottconverse","description":"One skill to install them all — Longhand + Context-Mode + Hardgate for Claude Code","archived":false,"fork":false,"pushed_at":"2026-04-16T08:13:48.000Z","size":771,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-16T09:16:46.359Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://scottconverse.github.io/stack/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scottconverse.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-16T06:48:57.000Z","updated_at":"2026-04-16T08:13:52.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/scottconverse/stack","commit_stats":null,"previous_names":["scottconverse/stack"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/scottconverse/stack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottconverse%2Fstack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottconverse%2Fstack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottconverse%2Fstack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottconverse%2Fstack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scottconverse","download_url":"https://codeload.github.com/scottconverse/stack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottconverse%2Fstack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31955945,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-18T04:08:09.583Z","updated_at":"2026-04-18T04:08:10.243Z","avatar_url":"https://github.com/scottconverse.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# stack · v1.1.2\n\n**One skill to install them all.**\n\n`/stack` installs [Longhand](https://github.com/Wynelson94/longhand),\n[Context-Mode](https://github.com/scottconverse/context-mode), and\n[Hardgate](https://github.com/scottconverse/hardgate) as a coordinated\nClaude Code stack — with timestamped config backup, per-tool idempotency\nguards, and a hardened post-install verification checklist.\n\n## Requirements\n\n- Python 3.10+\n- Node.js 18+\n- Claude Code CLI (`claude` on PATH) — the standalone installer will offer to install this via npm if missing\n- The full `stack` repo cloned locally\n\n## Install\n\n```bash\ngit clone https://github.com/scottconverse/stack\ncd stack\n```\n\n**Option A — Standalone installer (no Claude Code session needed):**\n\n```bash\n# macOS / Linux\nbash install.sh\n\n# Windows — double-click install.bat, or from Git Bash:\npython install.py\n```\n\n**Option B — Claude Code skill (from inside an active session):**\n\nAdd `skills/stack.md` to your Claude Code skill path, open a session, and run `/stack`.\n\n\u003e **Do not copy just `skills/stack.md` to `~/.claude/skills/`.**\n\u003e The skill requires `scripts/verify.py` to be present. Clone the\n\u003e full repo. The skill finds `verify.py` automatically via three-stage\n\u003e discovery (env var → plugin cache → bounded home search).\n\n## What it installs\n\n| Tool | What it does |\n|------|-------------|\n| **Longhand** | Stores every session verbatim in SQLite + ChromaDB. Semantic recall in ~126ms, zero API cost. |\n| **Context-Mode** | Sandboxes tool output. Keeps raw command results off the context window. |\n| **Hardgate** | Blocks forbidden tool calls via `exit 2` hooks. Requires one interactive step. |\n\n## What happens\n\n1. **Phase 0** — locates `verify.py` using env var → plugin cache → bounded find\n2. **Pre-flight** — checks Python, Node, and tool locations. Takes timestamped\n   snapshots of `~/.claude/settings.json` and `~/.claude.json`.\n3. **Idempotency** — checks ALL required artifacts per tool; only skips if\n   a tool is fully installed.\n4. **Install** — Longhand → Context-Mode → Hardgate (guided).\n5. **Post-verify** — `scripts/verify.py` checks specific expected hook\n   matchers, wiring, and MCP entries. Restores both config snapshots if\n   either is malformed.\n\n## Known limitation\n\nThe verifier checks that config entries are *present*, not that MCP\nservers are *live*. After install, run:\n\n```bash\nlonghand doctor\nclaude mcp list\n```\n\nto verify runtime health.\n\n## Tested versions\n\nThis repo was validated against these versions. Behavior with other\nversions is untested.\n\n| Tool | Tested version |\n|------|---------------|\n| Longhand | 0.5.5 |\n| Context-Mode | 1.6.0 |\n| Python | 3.14.3 (pre-release; 3.10+ supported) |\n| Node.js | 18+ |\n\nPin Longhand if you need a reproducible install:\n\n```bash\npip install longhand==0.5.5\n```\n\nContext-Mode is installed from a local clone — pin by checking out the\nvalidated commit hash before running `node install.js`.\n\n## Running the verifier standalone\n\n```bash\npython scripts/verify.py\n```\n\n## Tests\n\n```bash\npip install pytest\npytest tests/ -v\n```\n\n75 tests covering all verifier logic, exit codes, and installer behaviour.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottconverse%2Fstack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscottconverse%2Fstack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottconverse%2Fstack/lists"}