MertCapkin-GraphStack 4.5.1__tar.gz → 4.5.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. mertcapkin_graphstack-4.5.3/MANIFEST.in +2 -0
  2. {mertcapkin_graphstack-4.5.1/scripts/MertCapkin_GraphStack.egg-info → mertcapkin_graphstack-4.5.3}/PKG-INFO +40 -48
  3. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/README.md +38 -47
  4. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/pyproject.toml +19 -2
  5. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3/scripts/MertCapkin_GraphStack.egg-info}/PKG-INFO +40 -48
  6. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/MertCapkin_GraphStack.egg-info/SOURCES.txt +10 -0
  7. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/__init__.py +1 -1
  8. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/commands/graphstack.md +5 -0
  9. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/rules/graphstack.mdc +82 -0
  10. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/architect/ARCHITECT.md +169 -0
  11. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/bootstrapper/BOOTSTRAPPER.md +266 -0
  12. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/builder/BUILDER.md +167 -0
  13. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/qa/QA.md +165 -0
  14. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/reviewer/REVIEWER.md +171 -0
  15. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.cursor/skills/ship/SHIP.md +110 -0
  16. mertcapkin_graphstack-4.5.3/scripts/graphstack/assets/.graphstack-assets-version +1 -0
  17. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/bootstrap.py +2 -2
  18. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__pycache__/__init__.cpython-311.pyc +0 -0
  19. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__pycache__/base.cpython-311.pyc +0 -0
  20. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__pycache__/generic.cpython-311.pyc +0 -0
  21. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__pycache__/git.cpython-311.pyc +0 -0
  22. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__pycache__/registry.cpython-311.pyc +0 -0
  23. mertcapkin_graphstack-4.5.3/scripts/graphstack/tests/test_assets.py +40 -0
  24. mertcapkin_graphstack-4.5.1/scripts/graphstack/tests/test_assets.py +0 -35
  25. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/LICENSE +0 -0
  26. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/MertCapkin_GraphStack.egg-info/dependency_links.txt +0 -0
  27. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/MertCapkin_GraphStack.egg-info/entry_points.txt +0 -0
  28. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/MertCapkin_GraphStack.egg-info/requires.txt +0 -0
  29. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/MertCapkin_GraphStack.egg-info/top_level.txt +0 -0
  30. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/__main__.py +0 -0
  31. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/docs/CURSOR_PROMPTS.md +0 -0
  32. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/handoff/BOOTSTRAP.md +0 -0
  33. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/handoff/BRIEF.md +0 -0
  34. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/handoff/REVIEW.md +0 -0
  35. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/handoff/board/README.md +0 -0
  36. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/orchestrator/ORCHESTRATOR.md +0 -0
  37. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/orchestrator/TOKEN_OPTIMIZER.md +0 -0
  38. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/board.ps1 +0 -0
  39. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/board.sh +0 -0
  40. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/gate-hook.ps1 +0 -0
  41. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/gate-hook.sh +0 -0
  42. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/post-commit +0 -0
  43. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/assets/scripts/post-commit.ps1 +0 -0
  44. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/board.py +0 -0
  45. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/cli.py +0 -0
  46. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/__init__.py +0 -0
  47. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/base.py +0 -0
  48. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/generic.py +0 -0
  49. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/git.py +0 -0
  50. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/compact/registry.py +0 -0
  51. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/constants.py +0 -0
  52. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/gate.py +0 -0
  53. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/graph.py +0 -0
  54. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/hook.py +0 -0
  55. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/init_cmd.py +0 -0
  56. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/installer.py +0 -0
  57. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/platform_utils.py +0 -0
  58. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/run.py +0 -0
  59. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/state.py +0 -0
  60. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/__init__.py +0 -0
  61. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/conftest.py +0 -0
  62. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_board.py +0 -0
  63. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_compact.py +0 -0
  64. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_gate.py +0 -0
  65. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_graph.py +0 -0
  66. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_hook.py +0 -0
  67. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_init.py +0 -0
  68. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_installer.py +0 -0
  69. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_platform_utils.py +0 -0
  70. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_state.py +0 -0
  71. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/tests/test_validate.py +0 -0
  72. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/scripts/graphstack/validate.py +0 -0
  73. {mertcapkin_graphstack-4.5.1 → mertcapkin_graphstack-4.5.3}/setup.cfg +0 -0
@@ -0,0 +1,2 @@
1
+ # Dot-directories under assets/ must be grafted for sdist + wheel discovery.
2
+ graft scripts/graphstack/assets
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MertCapkin_GraphStack
3
- Version: 4.5.1
3
+ Version: 4.5.3
4
4
  Summary: Graph-first AI development workflow — board, gate, graph queries, one-shot init
5
5
  Author: GraphStack contributors
6
6
  License: MIT
@@ -8,6 +8,7 @@ Project-URL: Homepage, https://github.com/MertCapkin/GraphStack
8
8
  Project-URL: Repository, https://github.com/MertCapkin/GraphStack
9
9
  Project-URL: Documentation, https://github.com/MertCapkin/GraphStack#readme
10
10
  Project-URL: Bug Tracker, https://github.com/MertCapkin/GraphStack/issues
11
+ Project-URL: PyPI, https://pypi.org/project/MertCapkin_GraphStack/
11
12
  Keywords: graphstack,cursor,graphify,ai,workflow,agent
12
13
  Classifier: Development Status :: 4 - Beta
13
14
  Classifier: Environment :: Console
@@ -35,15 +36,15 @@ Dynamic: license-file
35
36
  One prompt starts the entire lifecycle — from blank repo to production.
36
37
 
37
38
  [![CI](https://github.com/MertCapkin/graphstack/actions/workflows/ci.yml/badge.svg)](https://github.com/MertCapkin/graphstack/actions)
39
+ [![PyPI](https://img.shields.io/pypi/v/MertCapkin_GraphStack)](https://pypi.org/project/MertCapkin_GraphStack/)
38
40
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
39
- [![Version](https://img.shields.io/badge/version-v4.5.1-blue)](CHANGELOG.md)
40
41
  [![Platforms](https://img.shields.io/badge/platforms-Windows%20%7C%20macOS%20%7C%20Linux-success)](#compatibility)
41
42
  [![Works with Cursor](https://img.shields.io/badge/Works%20with-Cursor-blue)](https://cursor.sh)
42
43
  [![Works with Claude Code](https://img.shields.io/badge/Works%20with-Claude%20Code-orange)](https://claude.ai/code)
43
44
 
44
45
  </div>
45
46
 
46
- > **v4.5 highlights:** One-command bootstrap (`bootstrap.ps1` / `bootstrap.sh`), PyPI-ready packaging, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
47
+ > **v4.5 highlights:** Published on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) as **`MertCapkin_GraphStack`**, one-command bootstrap, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
47
48
 
48
49
  ---
49
50
 
@@ -51,22 +52,23 @@ One prompt starts the entire lifecycle — from blank repo to production.
51
52
 
52
53
  Open your **project folder** in Cursor, open the integrated terminal, and run:
53
54
 
54
- **Windows (PowerShell):**
55
+ **Windows (PowerShell) — recommended:**
55
56
  ```powershell
56
- irm https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.ps1 | iex
57
+ irm https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.ps1 | iex
57
58
  ```
58
59
 
59
60
  **macOS / Linux:**
60
61
  ```bash
61
- curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.sh | bash
62
+ curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.sh | bash
62
63
  ```
63
64
 
64
- **After [PyPI publish](docs/PYPI.md):**
65
+ **Or install from PyPI directly:**
65
66
 
66
- > PyPI package name is **`MertCapkin_GraphStack`** (`graphstack` was already taken). The CLI command is still `graphstack`.
67
+ > Package: **`MertCapkin_GraphStack`** on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) (`graphstack` name was taken). CLI command: **`graphstack`**.
67
68
 
68
69
  ```bash
69
- pip install "MertCapkin_GraphStack[graphify]" && graphstack init . -y --install-deps
70
+ pip install "MertCapkin_GraphStack[graphify]"
71
+ graphstack init . -y --install-deps
70
72
  ```
71
73
 
72
74
  This installs GraphStack + Graphify, copies workflow files into **the current project**, refreshes the code graph, and runs `doctor`. Then describe your task in Cursor chat — rules load automatically.
@@ -75,67 +77,55 @@ This installs GraphStack + Graphify, copies workflow files into **the current pr
75
77
 
76
78
  ## Quick Start
77
79
 
78
- ### Step 1 — Install prerequisites
80
+ ### Step 1 — Install GraphStack (PyPI)
79
81
 
80
- **Python 3.8+** and **Git** are required. Check if you have them:
82
+ **Python 3.8+** and **Git** are required.
81
83
 
82
84
  ```bash
83
- py -3 --version # need 3.8 or higher
84
- git --version # any recent version is fine
85
+ py -3 --version
86
+ git --version
85
87
  ```
86
88
 
87
- **Install Graphify** the knowledge graph engine GraphStack is built on. The version range is pinned in [`requirements.txt`](requirements.txt):
89
+ Install GraphStack + Graphify from PyPI, then initialize **your project** (run inside your project folder):
88
90
 
89
91
  ```bash
90
- pip install -r requirements.txt
91
- # or, equivalently, install Graphify directly with the same pin:
92
- pip install "graphifyy>=0.7,<0.9"
93
-
94
- # Optional: install GraphStack CLI from a clone (board / validate / doctor / run)
95
- pip install -e /path/to/graphstack
96
- # or with Graphify in one step:
97
- pip install -e "/path/to/graphstack[graphify]"
92
+ pip install "MertCapkin_GraphStack[graphify]"
93
+ graphstack init . -y --install-deps
98
94
  ```
99
95
 
100
- After installation, register the Cursor slash command (one-time):
101
-
102
- ```bash
103
- graphify cursor install
104
- ```
96
+ Or use the [one-command bootstrap](#one-command-cursor-terminal) above (same result; installs from PyPI, falls back to GitHub if needed).
105
97
 
106
- Verify it worked:
98
+ Verify:
107
99
 
108
100
  ```bash
101
+ graphstack --version
102
+ graphstack doctor
109
103
  pip show graphifyy
110
104
  ```
111
105
 
112
- If `graphify` is not found after install, try:
113
-
114
- ```bash
115
- pip install --user "graphifyy>=0.7,<0.9"
116
- # then add ~/.local/bin to your PATH, or use:
117
- python3 -m graphify --version
118
- ```
106
+ > **PyPI:** [pypi.org/project/MertCapkin_GraphStack](https://pypi.org/project/MertCapkin_GraphStack/)
107
+ > **CLI name:** `graphstack` (unchanged — only the pip package name differs)
119
108
 
120
- > Graphify runs **entirely locally** — no API calls, no data sent anywhere.
121
- > It uses tree-sitter to parse your code and builds the graph on your machine.
109
+ Graphify runs **entirely locally** — tree-sitter AST, no API calls for code graphs.
122
110
 
123
111
  ---
124
112
 
125
- ### Step 2Install GraphStack into your project
113
+ ### Step 1 (alternative) Manual Graphify only
126
114
 
127
- GraphStack now works natively on Windows, macOS, and Linux. The installer runs through Python (which you already have for Graphify), so no shell-specific tooling is required.
128
-
129
- #### One command (recommended)
115
+ If you prefer to install Graphify separately first:
130
116
 
131
117
  ```bash
132
- git clone https://github.com/MertCapkin/graphstack /path/to/graphstack
133
- cd /path/to/your-project
134
- /path/to/graphstack/install.ps1 . # Windows
135
- # or: python -m graphstack init . -y # any OS — install + graph refresh + doctor
118
+ pip install "graphifyy>=0.7,<0.9"
119
+ graphify cursor install
120
+ pip install "MertCapkin_GraphStack[graphify]"
121
+ graphstack init . -y --install-deps
136
122
  ```
137
123
 
138
- #### macOS / Linux (bash / zsh)
124
+ ---
125
+
126
+ ### Step 2 — Install from source (contributors / offline)
127
+
128
+ For hacking on GraphStack itself or air-gapped installs, clone the repo instead of PyPI:
139
129
 
140
130
  ```bash
141
131
  git clone https://github.com/MertCapkin/graphstack /tmp/graphstack
@@ -199,7 +189,9 @@ What happens:
199
189
 
200
190
  Run this once. After that, use `/graphify --update` — it only re-scans changed files and takes a few seconds.
201
191
 
202
- **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it. Just go to Step 4.
192
+ **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it.
193
+
194
+ **Already ran `graphstack init --install-deps`?** You have a code-only graph in `graphify-out/`; run `/graphify .` in Cursor for the full semantic graph when ready.
203
195
 
204
196
  ---
205
197
 
@@ -373,7 +365,7 @@ GraphStack is a **workflow protocol** (markdown + handoff files), not a runtime
373
365
  | Role automation | Prompts alone cannot guarantee discipline. v4.3+ **`graphstack gate`** + v4.4 Cursor **`preToolUse`**. Hooks block commits and (on Cursor/Claude) code writes without a claimed task; `afterFileEdit` on Cursor remains advisory-only backup. |
374
366
  | Token savings | The table above is **estimated**, not guaranteed. Small repos or undisciplined sessions may use **more** tokens than unstructured chat. |
375
367
  | Knowledge graph | Value appears on **20+ file** codebases with module boundaries. Meta-repos full of markdown produce noisy graphs — use `.graphifyignore` (included in this repo). |
376
- | Setup | Graphify + GraphStack install + `/graphify` + Cursor four steps, not zero-config. |
368
+ | Setup | Graphify + `pip install MertCapkin_GraphStack` + `graphstack init`or one bootstrap command. See [PyPI](https://pypi.org/project/MertCapkin_GraphStack/). |
377
369
 
378
370
  **v4.1 helpers:** `graphstack doctor` (health report) and `graphstack validate` (exit code for CI). Use `--strict` before Builder handoff; use `--fail-stale-graph` in CI after code changes.
379
371
 
@@ -6,15 +6,15 @@
6
6
  One prompt starts the entire lifecycle — from blank repo to production.
7
7
 
8
8
  [![CI](https://github.com/MertCapkin/graphstack/actions/workflows/ci.yml/badge.svg)](https://github.com/MertCapkin/graphstack/actions)
9
+ [![PyPI](https://img.shields.io/pypi/v/MertCapkin_GraphStack)](https://pypi.org/project/MertCapkin_GraphStack/)
9
10
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
10
- [![Version](https://img.shields.io/badge/version-v4.5.1-blue)](CHANGELOG.md)
11
11
  [![Platforms](https://img.shields.io/badge/platforms-Windows%20%7C%20macOS%20%7C%20Linux-success)](#compatibility)
12
12
  [![Works with Cursor](https://img.shields.io/badge/Works%20with-Cursor-blue)](https://cursor.sh)
13
13
  [![Works with Claude Code](https://img.shields.io/badge/Works%20with-Claude%20Code-orange)](https://claude.ai/code)
14
14
 
15
15
  </div>
16
16
 
17
- > **v4.5 highlights:** One-command bootstrap (`bootstrap.ps1` / `bootstrap.sh`), PyPI-ready packaging, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
17
+ > **v4.5 highlights:** Published on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) as **`MertCapkin_GraphStack`**, one-command bootstrap, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
18
18
 
19
19
  ---
20
20
 
@@ -22,22 +22,23 @@ One prompt starts the entire lifecycle — from blank repo to production.
22
22
 
23
23
  Open your **project folder** in Cursor, open the integrated terminal, and run:
24
24
 
25
- **Windows (PowerShell):**
25
+ **Windows (PowerShell) — recommended:**
26
26
  ```powershell
27
- irm https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.ps1 | iex
27
+ irm https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.ps1 | iex
28
28
  ```
29
29
 
30
30
  **macOS / Linux:**
31
31
  ```bash
32
- curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.sh | bash
32
+ curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.sh | bash
33
33
  ```
34
34
 
35
- **After [PyPI publish](docs/PYPI.md):**
35
+ **Or install from PyPI directly:**
36
36
 
37
- > PyPI package name is **`MertCapkin_GraphStack`** (`graphstack` was already taken). The CLI command is still `graphstack`.
37
+ > Package: **`MertCapkin_GraphStack`** on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) (`graphstack` name was taken). CLI command: **`graphstack`**.
38
38
 
39
39
  ```bash
40
- pip install "MertCapkin_GraphStack[graphify]" && graphstack init . -y --install-deps
40
+ pip install "MertCapkin_GraphStack[graphify]"
41
+ graphstack init . -y --install-deps
41
42
  ```
42
43
 
43
44
  This installs GraphStack + Graphify, copies workflow files into **the current project**, refreshes the code graph, and runs `doctor`. Then describe your task in Cursor chat — rules load automatically.
@@ -46,67 +47,55 @@ This installs GraphStack + Graphify, copies workflow files into **the current pr
46
47
 
47
48
  ## Quick Start
48
49
 
49
- ### Step 1 — Install prerequisites
50
+ ### Step 1 — Install GraphStack (PyPI)
50
51
 
51
- **Python 3.8+** and **Git** are required. Check if you have them:
52
+ **Python 3.8+** and **Git** are required.
52
53
 
53
54
  ```bash
54
- py -3 --version # need 3.8 or higher
55
- git --version # any recent version is fine
55
+ py -3 --version
56
+ git --version
56
57
  ```
57
58
 
58
- **Install Graphify** the knowledge graph engine GraphStack is built on. The version range is pinned in [`requirements.txt`](requirements.txt):
59
+ Install GraphStack + Graphify from PyPI, then initialize **your project** (run inside your project folder):
59
60
 
60
61
  ```bash
61
- pip install -r requirements.txt
62
- # or, equivalently, install Graphify directly with the same pin:
63
- pip install "graphifyy>=0.7,<0.9"
64
-
65
- # Optional: install GraphStack CLI from a clone (board / validate / doctor / run)
66
- pip install -e /path/to/graphstack
67
- # or with Graphify in one step:
68
- pip install -e "/path/to/graphstack[graphify]"
62
+ pip install "MertCapkin_GraphStack[graphify]"
63
+ graphstack init . -y --install-deps
69
64
  ```
70
65
 
71
- After installation, register the Cursor slash command (one-time):
72
-
73
- ```bash
74
- graphify cursor install
75
- ```
66
+ Or use the [one-command bootstrap](#one-command-cursor-terminal) above (same result; installs from PyPI, falls back to GitHub if needed).
76
67
 
77
- Verify it worked:
68
+ Verify:
78
69
 
79
70
  ```bash
71
+ graphstack --version
72
+ graphstack doctor
80
73
  pip show graphifyy
81
74
  ```
82
75
 
83
- If `graphify` is not found after install, try:
84
-
85
- ```bash
86
- pip install --user "graphifyy>=0.7,<0.9"
87
- # then add ~/.local/bin to your PATH, or use:
88
- python3 -m graphify --version
89
- ```
76
+ > **PyPI:** [pypi.org/project/MertCapkin_GraphStack](https://pypi.org/project/MertCapkin_GraphStack/)
77
+ > **CLI name:** `graphstack` (unchanged — only the pip package name differs)
90
78
 
91
- > Graphify runs **entirely locally** — no API calls, no data sent anywhere.
92
- > It uses tree-sitter to parse your code and builds the graph on your machine.
79
+ Graphify runs **entirely locally** — tree-sitter AST, no API calls for code graphs.
93
80
 
94
81
  ---
95
82
 
96
- ### Step 2Install GraphStack into your project
83
+ ### Step 1 (alternative) Manual Graphify only
97
84
 
98
- GraphStack now works natively on Windows, macOS, and Linux. The installer runs through Python (which you already have for Graphify), so no shell-specific tooling is required.
99
-
100
- #### One command (recommended)
85
+ If you prefer to install Graphify separately first:
101
86
 
102
87
  ```bash
103
- git clone https://github.com/MertCapkin/graphstack /path/to/graphstack
104
- cd /path/to/your-project
105
- /path/to/graphstack/install.ps1 . # Windows
106
- # or: python -m graphstack init . -y # any OS — install + graph refresh + doctor
88
+ pip install "graphifyy>=0.7,<0.9"
89
+ graphify cursor install
90
+ pip install "MertCapkin_GraphStack[graphify]"
91
+ graphstack init . -y --install-deps
107
92
  ```
108
93
 
109
- #### macOS / Linux (bash / zsh)
94
+ ---
95
+
96
+ ### Step 2 — Install from source (contributors / offline)
97
+
98
+ For hacking on GraphStack itself or air-gapped installs, clone the repo instead of PyPI:
110
99
 
111
100
  ```bash
112
101
  git clone https://github.com/MertCapkin/graphstack /tmp/graphstack
@@ -170,7 +159,9 @@ What happens:
170
159
 
171
160
  Run this once. After that, use `/graphify --update` — it only re-scans changed files and takes a few seconds.
172
161
 
173
- **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it. Just go to Step 4.
162
+ **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it.
163
+
164
+ **Already ran `graphstack init --install-deps`?** You have a code-only graph in `graphify-out/`; run `/graphify .` in Cursor for the full semantic graph when ready.
174
165
 
175
166
  ---
176
167
 
@@ -344,7 +335,7 @@ GraphStack is a **workflow protocol** (markdown + handoff files), not a runtime
344
335
  | Role automation | Prompts alone cannot guarantee discipline. v4.3+ **`graphstack gate`** + v4.4 Cursor **`preToolUse`**. Hooks block commits and (on Cursor/Claude) code writes without a claimed task; `afterFileEdit` on Cursor remains advisory-only backup. |
345
336
  | Token savings | The table above is **estimated**, not guaranteed. Small repos or undisciplined sessions may use **more** tokens than unstructured chat. |
346
337
  | Knowledge graph | Value appears on **20+ file** codebases with module boundaries. Meta-repos full of markdown produce noisy graphs — use `.graphifyignore` (included in this repo). |
347
- | Setup | Graphify + GraphStack install + `/graphify` + Cursor four steps, not zero-config. |
338
+ | Setup | Graphify + `pip install MertCapkin_GraphStack` + `graphstack init`or one bootstrap command. See [PyPI](https://pypi.org/project/MertCapkin_GraphStack/). |
348
339
 
349
340
  **v4.1 helpers:** `graphstack doctor` (health report) and `graphstack validate` (exit code for CI). Use `--strict` before Builder handoff; use `--fail-stale-graph` in CI after code changes.
350
341
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "MertCapkin_GraphStack"
7
- version = "4.5.1"
7
+ version = "4.5.3"
8
8
  description = "Graph-first AI development workflow — board, gate, graph queries, one-shot init"
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
@@ -34,6 +34,7 @@ Homepage = "https://github.com/MertCapkin/GraphStack"
34
34
  Repository = "https://github.com/MertCapkin/GraphStack"
35
35
  Documentation = "https://github.com/MertCapkin/GraphStack#readme"
36
36
  "Bug Tracker" = "https://github.com/MertCapkin/GraphStack/issues"
37
+ PyPI = "https://pypi.org/project/MertCapkin_GraphStack/"
37
38
 
38
39
  [project.scripts]
39
40
  graphstack = "graphstack.cli:main"
@@ -41,8 +42,24 @@ graphstack = "graphstack.cli:main"
41
42
  [tool.setuptools.packages.find]
42
43
  where = ["scripts"]
43
44
 
45
+ [tool.setuptools]
46
+ include-package-data = true
47
+
48
+ # setuptools ``assets/**/*`` skips dot-directories (``.cursor/``) — list explicitly.
44
49
  [tool.setuptools.package-data]
45
- graphstack = ["assets/**/*", "compact/**/*"]
50
+ graphstack = [
51
+ "assets/.cursor/rules/graphstack.mdc",
52
+ "assets/.cursor/commands/graphstack.md",
53
+ "assets/.cursor/skills/architect/ARCHITECT.md",
54
+ "assets/.cursor/skills/builder/BUILDER.md",
55
+ "assets/.cursor/skills/reviewer/REVIEWER.md",
56
+ "assets/.cursor/skills/qa/QA.md",
57
+ "assets/.cursor/skills/ship/SHIP.md",
58
+ "assets/.cursor/skills/bootstrapper/BOOTSTRAPPER.md",
59
+ "assets/.graphstack-assets-version",
60
+ "assets/**/*",
61
+ "compact/**/*",
62
+ ]
46
63
 
47
64
  [tool.pytest.ini_options]
48
65
  testpaths = ["scripts/graphstack/tests"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MertCapkin_GraphStack
3
- Version: 4.5.1
3
+ Version: 4.5.3
4
4
  Summary: Graph-first AI development workflow — board, gate, graph queries, one-shot init
5
5
  Author: GraphStack contributors
6
6
  License: MIT
@@ -8,6 +8,7 @@ Project-URL: Homepage, https://github.com/MertCapkin/GraphStack
8
8
  Project-URL: Repository, https://github.com/MertCapkin/GraphStack
9
9
  Project-URL: Documentation, https://github.com/MertCapkin/GraphStack#readme
10
10
  Project-URL: Bug Tracker, https://github.com/MertCapkin/GraphStack/issues
11
+ Project-URL: PyPI, https://pypi.org/project/MertCapkin_GraphStack/
11
12
  Keywords: graphstack,cursor,graphify,ai,workflow,agent
12
13
  Classifier: Development Status :: 4 - Beta
13
14
  Classifier: Environment :: Console
@@ -35,15 +36,15 @@ Dynamic: license-file
35
36
  One prompt starts the entire lifecycle — from blank repo to production.
36
37
 
37
38
  [![CI](https://github.com/MertCapkin/graphstack/actions/workflows/ci.yml/badge.svg)](https://github.com/MertCapkin/graphstack/actions)
39
+ [![PyPI](https://img.shields.io/pypi/v/MertCapkin_GraphStack)](https://pypi.org/project/MertCapkin_GraphStack/)
38
40
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
39
- [![Version](https://img.shields.io/badge/version-v4.5.1-blue)](CHANGELOG.md)
40
41
  [![Platforms](https://img.shields.io/badge/platforms-Windows%20%7C%20macOS%20%7C%20Linux-success)](#compatibility)
41
42
  [![Works with Cursor](https://img.shields.io/badge/Works%20with-Cursor-blue)](https://cursor.sh)
42
43
  [![Works with Claude Code](https://img.shields.io/badge/Works%20with-Claude%20Code-orange)](https://claude.ai/code)
43
44
 
44
45
  </div>
45
46
 
46
- > **v4.5 highlights:** One-command bootstrap (`bootstrap.ps1` / `bootstrap.sh`), PyPI-ready packaging, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
47
+ > **v4.5 highlights:** Published on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) as **`MertCapkin_GraphStack`**, one-command bootstrap, `board reopen` / `list-done`. Plus v4.4 `graph query` + `init`, v4.3 gate. See [CHANGELOG.md](CHANGELOG.md).
47
48
 
48
49
  ---
49
50
 
@@ -51,22 +52,23 @@ One prompt starts the entire lifecycle — from blank repo to production.
51
52
 
52
53
  Open your **project folder** in Cursor, open the integrated terminal, and run:
53
54
 
54
- **Windows (PowerShell):**
55
+ **Windows (PowerShell) — recommended:**
55
56
  ```powershell
56
- irm https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.ps1 | iex
57
+ irm https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.ps1 | iex
57
58
  ```
58
59
 
59
60
  **macOS / Linux:**
60
61
  ```bash
61
- curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/main/scripts/bootstrap.sh | bash
62
+ curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.sh | bash
62
63
  ```
63
64
 
64
- **After [PyPI publish](docs/PYPI.md):**
65
+ **Or install from PyPI directly:**
65
66
 
66
- > PyPI package name is **`MertCapkin_GraphStack`** (`graphstack` was already taken). The CLI command is still `graphstack`.
67
+ > Package: **`MertCapkin_GraphStack`** on [PyPI](https://pypi.org/project/MertCapkin_GraphStack/) (`graphstack` name was taken). CLI command: **`graphstack`**.
67
68
 
68
69
  ```bash
69
- pip install "MertCapkin_GraphStack[graphify]" && graphstack init . -y --install-deps
70
+ pip install "MertCapkin_GraphStack[graphify]"
71
+ graphstack init . -y --install-deps
70
72
  ```
71
73
 
72
74
  This installs GraphStack + Graphify, copies workflow files into **the current project**, refreshes the code graph, and runs `doctor`. Then describe your task in Cursor chat — rules load automatically.
@@ -75,67 +77,55 @@ This installs GraphStack + Graphify, copies workflow files into **the current pr
75
77
 
76
78
  ## Quick Start
77
79
 
78
- ### Step 1 — Install prerequisites
80
+ ### Step 1 — Install GraphStack (PyPI)
79
81
 
80
- **Python 3.8+** and **Git** are required. Check if you have them:
82
+ **Python 3.8+** and **Git** are required.
81
83
 
82
84
  ```bash
83
- py -3 --version # need 3.8 or higher
84
- git --version # any recent version is fine
85
+ py -3 --version
86
+ git --version
85
87
  ```
86
88
 
87
- **Install Graphify** the knowledge graph engine GraphStack is built on. The version range is pinned in [`requirements.txt`](requirements.txt):
89
+ Install GraphStack + Graphify from PyPI, then initialize **your project** (run inside your project folder):
88
90
 
89
91
  ```bash
90
- pip install -r requirements.txt
91
- # or, equivalently, install Graphify directly with the same pin:
92
- pip install "graphifyy>=0.7,<0.9"
93
-
94
- # Optional: install GraphStack CLI from a clone (board / validate / doctor / run)
95
- pip install -e /path/to/graphstack
96
- # or with Graphify in one step:
97
- pip install -e "/path/to/graphstack[graphify]"
92
+ pip install "MertCapkin_GraphStack[graphify]"
93
+ graphstack init . -y --install-deps
98
94
  ```
99
95
 
100
- After installation, register the Cursor slash command (one-time):
101
-
102
- ```bash
103
- graphify cursor install
104
- ```
96
+ Or use the [one-command bootstrap](#one-command-cursor-terminal) above (same result; installs from PyPI, falls back to GitHub if needed).
105
97
 
106
- Verify it worked:
98
+ Verify:
107
99
 
108
100
  ```bash
101
+ graphstack --version
102
+ graphstack doctor
109
103
  pip show graphifyy
110
104
  ```
111
105
 
112
- If `graphify` is not found after install, try:
113
-
114
- ```bash
115
- pip install --user "graphifyy>=0.7,<0.9"
116
- # then add ~/.local/bin to your PATH, or use:
117
- python3 -m graphify --version
118
- ```
106
+ > **PyPI:** [pypi.org/project/MertCapkin_GraphStack](https://pypi.org/project/MertCapkin_GraphStack/)
107
+ > **CLI name:** `graphstack` (unchanged — only the pip package name differs)
119
108
 
120
- > Graphify runs **entirely locally** — no API calls, no data sent anywhere.
121
- > It uses tree-sitter to parse your code and builds the graph on your machine.
109
+ Graphify runs **entirely locally** — tree-sitter AST, no API calls for code graphs.
122
110
 
123
111
  ---
124
112
 
125
- ### Step 2Install GraphStack into your project
113
+ ### Step 1 (alternative) Manual Graphify only
126
114
 
127
- GraphStack now works natively on Windows, macOS, and Linux. The installer runs through Python (which you already have for Graphify), so no shell-specific tooling is required.
128
-
129
- #### One command (recommended)
115
+ If you prefer to install Graphify separately first:
130
116
 
131
117
  ```bash
132
- git clone https://github.com/MertCapkin/graphstack /path/to/graphstack
133
- cd /path/to/your-project
134
- /path/to/graphstack/install.ps1 . # Windows
135
- # or: python -m graphstack init . -y # any OS — install + graph refresh + doctor
118
+ pip install "graphifyy>=0.7,<0.9"
119
+ graphify cursor install
120
+ pip install "MertCapkin_GraphStack[graphify]"
121
+ graphstack init . -y --install-deps
136
122
  ```
137
123
 
138
- #### macOS / Linux (bash / zsh)
124
+ ---
125
+
126
+ ### Step 2 — Install from source (contributors / offline)
127
+
128
+ For hacking on GraphStack itself or air-gapped installs, clone the repo instead of PyPI:
139
129
 
140
130
  ```bash
141
131
  git clone https://github.com/MertCapkin/graphstack /tmp/graphstack
@@ -199,7 +189,9 @@ What happens:
199
189
 
200
190
  Run this once. After that, use `/graphify --update` — it only re-scans changed files and takes a few seconds.
201
191
 
202
- **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it. Just go to Step 4.
192
+ **New project with no code yet?** Skip this step — GraphStack's Bootstrap Mode handles it.
193
+
194
+ **Already ran `graphstack init --install-deps`?** You have a code-only graph in `graphify-out/`; run `/graphify .` in Cursor for the full semantic graph when ready.
203
195
 
204
196
  ---
205
197
 
@@ -373,7 +365,7 @@ GraphStack is a **workflow protocol** (markdown + handoff files), not a runtime
373
365
  | Role automation | Prompts alone cannot guarantee discipline. v4.3+ **`graphstack gate`** + v4.4 Cursor **`preToolUse`**. Hooks block commits and (on Cursor/Claude) code writes without a claimed task; `afterFileEdit` on Cursor remains advisory-only backup. |
374
366
  | Token savings | The table above is **estimated**, not guaranteed. Small repos or undisciplined sessions may use **more** tokens than unstructured chat. |
375
367
  | Knowledge graph | Value appears on **20+ file** codebases with module boundaries. Meta-repos full of markdown produce noisy graphs — use `.graphifyignore` (included in this repo). |
376
- | Setup | Graphify + GraphStack install + `/graphify` + Cursor four steps, not zero-config. |
368
+ | Setup | Graphify + `pip install MertCapkin_GraphStack` + `graphstack init`or one bootstrap command. See [PyPI](https://pypi.org/project/MertCapkin_GraphStack/). |
377
369
 
378
370
  **v4.1 helpers:** `graphstack doctor` (health report) and `graphstack validate` (exit code for CI). Use `--strict` before Builder handoff; use `--fail-stale-graph` in CI after code changes.
379
371
 
@@ -1,4 +1,5 @@
1
1
  LICENSE
2
+ MANIFEST.in
2
3
  README.md
3
4
  pyproject.toml
4
5
  scripts/MertCapkin_GraphStack.egg-info/PKG-INFO
@@ -22,6 +23,15 @@ scripts/graphstack/platform_utils.py
22
23
  scripts/graphstack/run.py
23
24
  scripts/graphstack/state.py
24
25
  scripts/graphstack/validate.py
26
+ scripts/graphstack/assets/.graphstack-assets-version
27
+ scripts/graphstack/assets/.cursor/commands/graphstack.md
28
+ scripts/graphstack/assets/.cursor/rules/graphstack.mdc
29
+ scripts/graphstack/assets/.cursor/skills/architect/ARCHITECT.md
30
+ scripts/graphstack/assets/.cursor/skills/bootstrapper/BOOTSTRAPPER.md
31
+ scripts/graphstack/assets/.cursor/skills/builder/BUILDER.md
32
+ scripts/graphstack/assets/.cursor/skills/qa/QA.md
33
+ scripts/graphstack/assets/.cursor/skills/reviewer/REVIEWER.md
34
+ scripts/graphstack/assets/.cursor/skills/ship/SHIP.md
25
35
  scripts/graphstack/assets/docs/CURSOR_PROMPTS.md
26
36
  scripts/graphstack/assets/handoff/BOOTSTRAP.md
27
37
  scripts/graphstack/assets/handoff/BRIEF.md
@@ -8,5 +8,5 @@ Commands: ``board``, ``install``, ``init``, ``hook``, ``validate``, ``doctor``,
8
8
  ``gate``, ``state``, ``graph``
9
9
  """
10
10
 
11
- __version__ = "4.5.1"
11
+ __version__ = "4.5.3"
12
12
  __all__ = ["__version__"]
@@ -0,0 +1,5 @@
1
+ # GraphStack — start Orchestrator
2
+
3
+ 1. Execute **Activation** in `orchestrator/ORCHESTRATOR.md` exactly as written (including step **1a**).
4
+ 2. Greet using the scripted format from that section.
5
+ 3. Wait for user input (`Activation` wait step). If the user already embedded their goal in the same message as this command, proceed with that goal immediately after greeting.