Graph-first AI development workflow โ board, gate, graph queries, one-shot init
Project description
GraphStack ๐ง โก
Graph-first, automatically orchestrated AI development workflow.
One prompt starts the entire lifecycle โ from blank repo to production.
v4.6 highlights:
graphstack cycle(start / enter-builder), gate v3 (role=builder for edits, strict ship/review), expandedalwaysApplyrules, hook merge on install. See CHANGELOG.md.
One command (Cursor terminal)
Open your project folder in Cursor, open the integrated terminal, and run:
Windows (PowerShell) โ recommended:
irm https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.ps1 | iex
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/MertCapkin/GraphStack/master/scripts/bootstrap.sh | bash
Or install from PyPI directly:
Package:
MertCapkin_GraphStackon PyPI (graphstackname was taken). CLI command:graphstack.
pip install "MertCapkin_GraphStack[graphify]"
graphstack init . -y --install-deps
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.
Quick Start
Step 1 โ Install GraphStack (PyPI)
Python 3.8+ and Git are required.
py -3 --version
git --version
Install GraphStack + Graphify from PyPI, then initialize your project (run inside your project folder):
pip install "MertCapkin_GraphStack[graphify]"
graphstack init . -y --install-deps
Or use the one-command bootstrap above (same result; installs from PyPI, falls back to GitHub if needed).
Verify:
graphstack --version
graphstack doctor
pip show graphifyy
PyPI: pypi.org/project/MertCapkin_GraphStack
CLI name:graphstack(unchanged โ only the pip package name differs)
Graphify runs entirely locally โ tree-sitter AST, no API calls for code graphs.
Step 1 (alternative) โ Manual Graphify only
If you prefer to install Graphify separately first:
pip install "graphifyy>=0.7,<0.9"
graphify cursor install
pip install "MertCapkin_GraphStack[graphify]"
graphstack init . -y --install-deps
Step 2 โ Install from source (contributors / offline)
For hacking on GraphStack itself or air-gapped installs, clone the repo instead of PyPI:
git clone https://github.com/MertCapkin/graphstack /tmp/graphstack
cd /path/to/your-project
bash /tmp/graphstack/install.sh
# or, equivalently:
# python3 -m graphstack install . --no-interactive
Windows (PowerShell โ native, no Git Bash needed)
git clone https://github.com/MertCapkin/graphstack $env:TEMP\graphstack
cd C:\path\to\your-project
& $env:TEMP\graphstack\install.ps1 .
If python.exe on Windows redirects you to the Microsoft Store, the installer detects that and falls back to the official py -3 launcher automatically.
Any platform (Python, no shell preference)
git clone https://github.com/MertCapkin/graphstack /path/to/graphstack
cd /path/to/your-project
python -m graphstack install . --non-interactive
This copies all GraphStack files into your project:
.cursor/rules/graphstack.mdcโ Cursor loads this automatically on every sessionorchestrator/,.cursor/skills/,handoff/,scripts/โ the full workflow systemscripts/graphstack/โ the Python helper package (used by both the bash and PowerShell shims)
The install script is non-destructive: it won't overwrite existing handoff/BRIEF.md, handoff/REVIEW.md, or handoff/BOOTSTRAP.md if they already exist.
Step 3 โ Build the knowledge graph
Open your project in Cursor. In the chat, type:
/graphify .
What happens:
- Graphify scans all source files (25 languages supported)
- Builds a dependency graph using tree-sitter (local, no API)
- Creates three files in
graphify-out/:GRAPH_REPORT.mdโ human-readable architecture summarygraph.jsonโ machine-queryable full graphgraph.htmlโ visual explorer, open in browser
How long does it take?
| Codebase size | Time |
|---|---|
| < 50 files | ~5 seconds |
| 50โ200 files | ~15โ30 seconds |
| 200โ500 files | ~1โ2 minutes |
| 500+ files | ~3โ5 minutes |
Run this once. After that, use /graphify --update โ it only re-scans changed files and takes a few seconds.
New project with no code yet? Skip this step โ GraphStack's Bootstrap Mode handles it.
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.
Step 4 โ Start working
The repo ships two ways to bootstrap the orchestrator โ pick whichever feels natural.
A) Easiest โ new chat only (recommended)
Because .cursor/rules/graphstack.mdc is alwaysApply: true, every new Composer / Agent
session already carries GraphStackโs binding rules. Simply open chat and describe your goal in
natural language (Add โฆ, Fix โฆ). The assistantโs first turn must still execute
orchestrator/ORCHESTRATOR.md โ Activation** (parallel TOKEN_OPTIMIZER+GRAPH_REPORT), but **you donโt paste** Read orchestrator/...` anymore.
B) Slash command /graphstack (explicit nudge)
In Cursor Chat/Composer press / โ choose graphstack. That injects the Bootstrap command
stored in .cursor/commands/graphstack.md (helps when you want deterministic orchestrator wording
or onboarding teammates).
If /graphstack doesn't appear immediately, restart Cursor once so it rescans .cursor/commands/.
C) Classic explicit prompt (fallback / other tools)
Existing codebase:
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
[Describe what you want to build or fix]
New project from scratch:
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
This is a new project with no existing codebase.
I want to build [describe your idea].
Tech stack: [language, framework, database].
GraphStack handles everything from here โ planning, building, reviewing, testing, shipping.
What Is GraphStack?
GraphStack combines two ideas into one installable system:
Graphify builds a queryable knowledge graph of your codebase. Every AI query navigates that compact map instead of re-reading raw files from scratch.
Role-based orchestration drives a structured lifecycle: Bootstrapper โ Architect โ Builder โ Reviewer โ QA โ Ship. A central Orchestrator manages all transitions automatically. You never switch roles manually.
You write one prompt. GraphStack runs the full cycle.
The Problem
Without GraphStack, every AI coding session looks like this:
You: "Add rate limiting to login."
AI: reads login.ts... reads session.ts... reads crypto.ts... reads types.ts...
(4 files, ~3 000 tokens โ before writing a single line)
You: "Now add tests."
AI: reads login.ts again... reads session.ts again...
(same files, same cost, zero memory)
Problems:
- Token waste โ AI re-reads your codebase on every query
- No structure โ planning, coding, reviewing blur together
- No memory โ closing Cursor means starting from zero
- No audit trail โ impossible to know what was decided and why
The Solution
Step 1 โ once:
/graphify . โ graphify-out/GRAPH_REPORT.md + graph.json
Step 2 โ every session (minimal typing):
Open Composer + describe the task (rules already activate GraphStack automatically),
optionally type `/graphstack` once for an explicit orchestrator preamble,
or paste the legacy `Read orchestrator/ORCHESTRATOR.md โฆ` snippet if working outside Cursor.
Example natural-language kickoff:
"Add rate limiting to login."
[ARCHITECT] cycle start โ reads graph โ scopes change โ writes BRIEF.md
โ auto
[BUILDER] cycle enter-builder โ reads brief โ builds exactly the brief
โ auto
[REVIEWER] checks criteria โ inspects graph neighbors for side effects
โ auto (loops to Builder if rejected, max 3ร)
[QA] traces call path through graph โ verifies behavior
โ auto
[SHIP] checklist โ graph update โ commit message โ closes board task
Zero manual role switching. Zero repeated file reads. Full git audit trail.
Bootstrap Mode โ Start from Zero
No code yet? GraphStack handles that too.
Composer (Cursor):
Describe the product + tech stack naturally (alwaysApply rules bootstrap GraphStack),
optionally `/graphstack` beforehand to inject the scripted opener.
Bootstrap example:
"/graphstack then: New project REST API for task mgmt โ TS, Express, PostgreSQL."
[BOOTSTRAPPER] analyzes idea โ decomposes into modules โ orders by dependency
โ writes BOOTSTRAP.md (the memory across all cycles)
โ writes Cycle 1 brief
โ auto
[BUILDER โ REVIEWER โ QA โ SHIP] Cycle 1 (auth module)
โ
run /graphify . โ first graph from real code
โ
[BOOTSTRAPPER] reads new graph โ writes Cycle 2 brief with real knowledge
โ auto
[BUILDER โ REVIEWER โ QA โ SHIP] Cycle 2 (data models)
โ
run /graphify --update โ next cycle โ ...
Each brief is written with knowledge of what was actually built โ not just planned. The graph grows with the project.
Token Savings
GraphStack's savings come from three mechanisms:
| Mechanism | How | Savings |
|---|---|---|
| Graph-first reads | GRAPH_REPORT.md replaces browsing 10+ files | ~85% on architecture queries |
| Role discipline | Each role reads only what its job requires | ~60% vs unstructured sessions |
| File-based state | STATE.md replaces chat history on resume | ~60% per new session |
| Parallel reads | Multiple files in one tool call | ~50% on multi-file ops |
| Shell compaction | graphstack run shrinks git/test output before it hits context |
~60โ80% on verbose shell ops |
Net savings by codebase size:
| Codebase | Tokens/day without | Tokens/day with | Saving |
|---|---|---|---|
| Small (10โ20 files) | ~40k | ~28k | ~30% |
| Medium (50โ100 files) | ~180k | ~54k | ~70% |
| Large (200+ files) | ~600k | ~90k | ~85% |
| Very large (500+ files) | ~1.5M | ~180k | ~88% |
Estimates based on Graphify benchmarks and TOKEN_OPTIMIZER rules. Real savings depend on query patterns. See docs/case-studies/graphstack-self.md for an honest self-analysis โ measured community benchmarks are welcome via PR.
Limitations (read before adopting)
GraphStack is a workflow protocol (markdown + handoff files), not a runtime that enforces AI behavior.
| Topic | Reality |
|---|---|
| Role automation | Prompts + gate v3 (v4.6): code edits require STATE.json role=builder and a task in doing/. graphstack cycle binds board + state. Strict mode (GRAPHSTACK_GATE=strict) also enforces ship/review before code commits. afterFileEdit on Cursor remains advisory-only backup. |
| Token savings | The table above is estimated, not guaranteed. Small repos or undisciplined sessions may use more tokens than unstructured chat. |
| 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). |
| Setup | Graphify + pip install MertCapkin_GraphStack + graphstack init โ or one bootstrap command. See PyPI. |
Health checks: graphstack doctor and graphstack validate (exit code for CI). v4.6 adds handoff sync + hooks.json checks. Use --strict before Builder handoff; use --fail-stale-graph in CI after code changes.
graphstack doctor
graphstack validate
graphstack validate --strict --fail-stale-graph
Shell Output Compaction (graphstack run)
Graph-first rules reduce file reads. Shell compaction reduces terminal output (git status, diffs, test runners) before it enters the AI context โ without installing third-party proxies.
Who uses it: Cursor/Claude agents follow TOKEN_OPTIMIZER.md and .cursor/rules/graphstack.mdc โ they call graphstack run, not raw git/pytest. You do not need to remember a separate workflow.
python -m graphstack run -- git status
python -m graphstack run -- git diff
python -m graphstack run -- git log -n 20
python -m graphstack run -- pytest -q
Quality safeguards (not โblind compressionโ):
- File paths, branch names, diff hunks (
@@), and+/-lines are preserved - Test failures, tracebacks, and stderr are kept (stderr is never compacted)
- If compaction would drop too much signal, output falls back to raw automatically
- Full output when debugging:
python -m graphstack run --raw -- git diff
Independent Python implementation (MIT) โ inspired by common agent-tooling patterns, no RTK dependency or vendored code.
graphstack doctor reports whether the compact module is installed in your project.
Graph Queries (graphstack graph)
Graph-first rules mean query the graph before opening raw files. v4.4 wraps Graphify's CLI so agents use one consistent command:
python -m graphstack graph query "who calls login"
python -m graphstack graph query "blast radius of crypto.ts" --budget 1500
python -m graphstack graph path src/auth/login.ts src/utils/crypto.ts
python -m graphstack graph explain "login()"
python -m graphstack graph update . # AST-only refresh after code changes
Requires graphify on PATH (pip install -r requirements.txt). Agents should prefer graph query over reading full GRAPH_REPORT.md or grepping source for structural questions.
Process Gate (graphstack gate)
Gate v3 (v4.6) adds role-aware enforcement so Architect โ Builder โ Reviewer steps are harder to skip silently. Cursor preToolUse blocks edits before they land; use graphstack cycle for the mechanical handoff steps.
| Rule | What it blocks | Cursor | Claude Code |
|---|---|---|---|
| R1 | git commit touching code while doing/ is empty |
deny | deny |
| R2 | Edit/Write on code paths while doing/ is empty |
deny | deny |
| R3 | Template BRIEF.md while task in doing/ |
deny | deny |
| R2b | Code edit while STATE.json role โ builder |
deny | deny |
| R3b | Code edit while BRIEF.md status is Draft |
deny | deny |
| R4 | Stale STATE.json vs board claim |
advisory (stop; deny in strict) |
same |
| R5 | Code commit while role โ ship |
โ | โ (strict only) |
| R6 | Code commit without Verdict: Approved in REVIEW.md |
โ | โ (strict only) |
| โ | Edit already applied (legacy hook) | advisory (afterFileEdit) |
โ |
python -m graphstack cycle start my-feature "Add email verification"
python -m graphstack cycle enter-builder my-feature # after Architect writes BRIEF
python -m graphstack gate check # CI / manual โ exit 1 on violation
python -m graphstack state set --role builder --task my-feature
GRAPHSTACK_GATE=off # emergency bypass (one session)
GRAPHSTACK_GATE=strict # R4โR6 + fail-closed on hook errors
Install writes or merges .cursor/hooks.json and .claude/settings.json with OS-specific shim commands (scripts/gate-hook.ps1 on Windows, scripts/gate-hook.sh on macOS/Linux). By default hooks fail open if Python is missing โ use GRAPHSTACK_GATE=strict for teams that prefer blocking over availability.
Framework repo note: This GitHub repo ships
handoff/as templates (empty brief, nodone/tasks). Your installed project fills those files during real work. Before contributing here, reset handoff โ see CONTRIBUTING.md.
What Gets Installed
your-project/
โโโ .cursor/rules/graphstack.mdc โ always-active rules v4.6 (Cursor auto-loads)
โโโ .cursor/hooks.json โ process gate (merged on reinstall)
โโโ .cursor/commands/graphstack.md โ `/graphstack` Cursor slash-command bootstrapper
โโโ orchestrator/
โ โโโ ORCHESTRATOR.md โ state machine: all transitions
โ โโโ TOKEN_OPTIMIZER.md โ token budget rules for all roles
โโโ .cursor/skills/
โ โโโ bootstrapper/BOOTSTRAPPER.md โ new project โ module plan โ cycles
โ โโโ architect/ARCHITECT.md โ scopes features, writes briefs
โ โโโ builder/BUILDER.md โ implements exactly the brief
โ โโโ reviewer/REVIEWER.md โ checks criteria + graph side effects
โ โโโ qa/QA.md โ traces call paths, verifies behavior
โ โโโ ship/SHIP.md โ checklist + graph update + commit msg
โโโ handoff/
โ โโโ BRIEF.md โ Architect โ Builder
โ โโโ REVIEW.md โ Reviewer + QA findings (append-only)
โ โโโ STATE.md โ human session log (append-only)
โ โโโ STATE.json โ machine state for gate hooks
โ โโโ BOOTSTRAP.md โ cross-cycle project memory
โ โโโ board/
โ โโโ todo/ โ tasks waiting to be claimed
โ โโโ doing/ โ tasks in progress
โ โโโ done/ โ completed tasks (audit trail)
โโโ graphify-out/ โ generated by graphify (commit this)
โ โโโ GRAPH_REPORT.md
โ โโโ graph.json
โ โโโ graph.html
โโโ scripts/
โ โโโ board.sh โ GNAP board shim (bash)
โ โโโ board.ps1 โ GNAP board shim (PowerShell)
โ โโโ post-commit โ smart graph-update hook (bash)
โ โโโ post-commit.ps1 โ smart graph-update hook (PowerShell)
โ โโโ graphstack/ โ Python core (single source of truth)
โ โโโ board.py โ GNAP board logic
โ โโโ installer.py โ project installer logic
โ โโโ hook.py โ post-commit graph-update logic
โ โโโ platform_utils.py โ OS detection, Python finder, encoding-safe echo
โ โโโ cli.py โ entry point dispatcher
โ โโโ validate.py โ layout / brief / graph / hooks checks
โ โโโ gate.py โ process gate (R1โR6)
โ โโโ state.py โ handoff/STATE.json
โ โโโ cycle.py โ cycle start / enter-builder
โ โโโ brief_utils.py โ shared BRIEF/REVIEW helpers
โ โโโ graph.py โ graphify query wrappers
โ โโโ run.py โ shell runner with compaction
โ โโโ compact/ โ git / pytest / generic compactors
โ โโโ tests/ โ pytest suite
โโโ pyproject.toml โ pip install -e . (v4.1+)
โโโ .graphifyignore โ code-focused graph for this repo
The GNAP Board
GraphStack uses Git-Native Agent Protocol for task tracking โ no server, no database, just files and git commits.
All three forms below are equivalent. Pick whichever fits your shell.
macOS / Linux (bash)
bash scripts/board.sh status
bash scripts/board.sh new add-oauth Add OAuth login with GitHub
bash scripts/board.sh claim add-oauth builder
bash scripts/board.sh complete add-oauth
bash scripts/board.sh log
Windows (PowerShell)
.\scripts\board.ps1 status
.\scripts\board.ps1 new add-oauth Add OAuth login with GitHub
.\scripts\board.ps1 claim add-oauth builder
.\scripts\board.ps1 complete add-oauth
.\scripts\board.ps1 log
Cross-platform (any shell with Python)
Preferred โ full cycle handoff (v4.6):
python -m graphstack cycle start add-oauth "Add OAuth login with GitHub"
# Architect writes handoff/BRIEF.md โ Status: Ready for Builder
python -m graphstack cycle enter-builder add-oauth
Low-level board (still supported):
python -m graphstack board status
python -m graphstack board new add-oauth Add OAuth login with GitHub
python -m graphstack board claim add-oauth builder
python -m graphstack board complete add-oauth
python -m graphstack board log
python -m graphstack run -- git status
python -m graphstack doctor
python -m graphstack validate --strict --fail-stale-graph
Every board operation is a git commit. git log handoff/board/ shows who did what, when.
Graph Update Strategy
GraphStack's Ship role manages graph updates automatically at the end of every cycle:
| Condition | Action |
|---|---|
| Files were added or deleted this cycle | Always update |
| Bootstrap cycle completed | Always update (next brief needs fresh graph) |
| Content-only edits (bug fixes, refactors) | Skip โ graph topology unchanged |
The post-commit hook enforces the same rules automatically. You never need to think about when to update.
Project Suitability
| Project type | Suitability | Notes |
|---|---|---|
| REST / GraphQL API | โญโญโญโญโญ | Best fit โ clear module boundaries |
| Monolithic web app | โญโญโญโญโญ | God node protection is critical here |
| Data pipeline / ETL | โญโญโญโญโญ | Graph mirrors pipeline topology |
| Library / SDK | โญโญโญโญโญ | Breaking change detection is precise |
| Microservice (single) | โญโญโญโญโญ | Integration edges clearly visible |
| CLI tool | โญโญโญโญ | Good for medium+ complexity |
| Serverless / Lambda | โญโญโญโญ | Shared util blast radius visible |
| Admin panel | โญโญโญโญ | State + API integration coverage |
| Game server (backend) | โญโญโญโญ | State machine edges map well |
| DevOps / automation | โญโญโญโญ | Script dependency tracking |
| React / Vue SPA | โญโญโญ | Good, but UI churn increases update frequency |
| TypeScript monorepo | โญโญโญ | Cross-package deps very valuable |
| Mobile app (React Native) | โญโญโญ | JS/TS layer fully covered |
| Unity game (C#) | โญโญโญ | God node protection excellent |
| E-commerce backend | โญโญโญ | Checkout flow blast radius useful |
| AI / embedding pipeline | โญโญโญ | Static structure good; runtime behavior not |
| Flutter app | โญโญ | Dart supported; widget tree less useful |
| Rapid prototype | โญโญ | Brief discipline adds friction at this stage |
| Static site | โญ | Minimal dependencies โ low graph value |
| Single-file script | โญ | No graph structure to analyze |
Rule of thumb: GraphStack pays off when your codebase exceeds ~20 files and queries regularly cross module boundaries.
Comparison
| GraphStack | gstack | loki-mode | code-review-graph | |
|---|---|---|---|---|
| Knowledge graph | โ Graphify | โ | โ | โ |
| Auto role transitions | โ | โ manual | โ complex | โ |
| Bootstrap (0โproject) | โ | โ | โ | โ |
| Git-native task board | โ GNAP | โ | โ | โ |
| Session resumability | โ STATE.md | โ | โ | โ |
| Token optimization rules | โ explicit | โ | โ | โ partial |
Cursor /graphstack slash bootstrap |
โ | โ | โ | โ |
| Setup complexity | Low | Low | High | Low |
Resuming a Session
Default (Cursor Composer with GraphStack repo open): reopen chat and paste a short cue such as "Resume GraphStack STATE.md" or select /graphstack followed by "Resume" โ Activation still runs tokens + graph loaders automatically.
Classic explicit prompt:
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
Resume from last session.
Orchestrator reads handoff/STATE.md and handoff/board/doing/ and picks up exactly where it left off.
All Prompts
Quick path: describe work directly (rules + optional /graphstack). Legacy blocks remain for deterministic copy/paste workflows or nonโCursor tooling.
Standard session (legacy explicit)
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
[What you want to build or fix โ any language]
New project from scratch (legacy explicit)
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
This is a new project with no existing codebase.
I want to build [describe your idea].
Tech stack: [language, framework, database].
Resume a previous session (legacy explicit)
Read orchestrator/ORCHESTRATOR.md and follow it exactly.
Resume from last session.
Manual role activation (advanced)
Use these when you want a single role without the full lifecycle:
Architect โ plan and scope only, no building
Read .cursor/skills/architect/ARCHITECT.md and follow it exactly.
Read orchestrator/TOKEN_OPTIMIZER.md for token rules.
[What you want to plan]
Builder โ build directly from an existing brief
Read .cursor/skills/builder/BUILDER.md and follow it exactly.
Read orchestrator/TOKEN_OPTIMIZER.md for token rules.
Brief is in handoff/BRIEF.md. Start building.
Reviewer โ review existing code or a diff
Read .cursor/skills/reviewer/REVIEWER.md and follow it exactly.
Read orchestrator/TOKEN_OPTIMIZER.md for token rules.
Review the changes in [filename or "the last git diff"].
QA โ trace and verify a specific feature
Read .cursor/skills/qa/QA.md and follow it exactly.
Read orchestrator/TOKEN_OPTIMIZER.md for token rules.
Trace and verify [feature name].
Ship โ run pre-deploy checklist
Read .cursor/skills/ship/SHIP.md and follow it exactly.
Run the pre-ship checklist for task [task-id].
Bootstrapper โ decompose an idea into a module plan only
Read .cursor/skills/bootstrapper/BOOTSTRAPPER.md and follow it exactly.
Read orchestrator/TOKEN_OPTIMIZER.md for token rules.
[Describe your project idea]
Note:
.cursor/rules/graphstack.mdcis loaded automatically by Cursor on every session. You never need to reference it manually.
Compatibility
| Tool | Orchestrator | Manual roles |
|---|---|---|
| Cursor | โ Full (.mdc auto-loads) | โ |
| Claude Code | โ Full | โ |
| VS Code Copilot Chat | โ Full | โ |
| GitHub Copilot CLI | โ ๏ธ Paste per session | โ |
| Aider | โ ๏ธ Paste per session | โ |
Demo
demo/DEMO_WALKTHROUGH.md โ full end-to-end walkthrough: adding rate limiting to a Node.js auth service, showing every automatic transition, graph query, and board update.
Contributing
See CONTRIBUTING.md. GraphStack is just markdown and bash โ the barrier is intentionally low.
License
MIT โ free forever. No telemetry. No accounts. No phoning home.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mertcapkin_graphstack-4.6.1.tar.gz.
File metadata
- Download URL: mertcapkin_graphstack-4.6.1.tar.gz
- Upload date:
- Size: 103.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc8538327e5714331a0e299d66859c270e68dfd637675c1309c018ada535e0b1
|
|
| MD5 |
91fe52ae020364714ff3700f3d46e657
|
|
| BLAKE2b-256 |
f9dd8aa2f48443f94ccbe81b7d31d7f4b7f653a31b7c36d1edbe93197b77a45a
|
Provenance
The following attestation bundles were made for mertcapkin_graphstack-4.6.1.tar.gz:
Publisher:
publish.yml on MertCapkin/GraphStack
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mertcapkin_graphstack-4.6.1.tar.gz -
Subject digest:
cc8538327e5714331a0e299d66859c270e68dfd637675c1309c018ada535e0b1 - Sigstore transparency entry: 1802210991
- Sigstore integration time:
-
Permalink:
MertCapkin/GraphStack@3721e287838ce9ee20b11e7314541ed280488dd5 -
Branch / Tag:
refs/tags/v4.6.1 - Owner: https://github.com/MertCapkin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3721e287838ce9ee20b11e7314541ed280488dd5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mertcapkin_graphstack-4.6.1-py3-none-any.whl.
File metadata
- Download URL: mertcapkin_graphstack-4.6.1-py3-none-any.whl
- Upload date:
- Size: 121.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4eaa4aaa501fd14b637c523b46b255e40228fed7200969e95abaa1ddf96d550d
|
|
| MD5 |
5c8e13a8b4962e786af8f2402d67d75e
|
|
| BLAKE2b-256 |
c71cc97090404d15655e6229a7773dd6e6483d016cd808ba46ea7bb87fc68ab7
|
Provenance
The following attestation bundles were made for mertcapkin_graphstack-4.6.1-py3-none-any.whl:
Publisher:
publish.yml on MertCapkin/GraphStack
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mertcapkin_graphstack-4.6.1-py3-none-any.whl -
Subject digest:
4eaa4aaa501fd14b637c523b46b255e40228fed7200969e95abaa1ddf96d550d - Sigstore transparency entry: 1802211196
- Sigstore integration time:
-
Permalink:
MertCapkin/GraphStack@3721e287838ce9ee20b11e7314541ed280488dd5 -
Branch / Tag:
refs/tags/v4.6.1 - Owner: https://github.com/MertCapkin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3721e287838ce9ee20b11e7314541ed280488dd5 -
Trigger Event:
release
-
Statement type: