Skip to main content

GrapeRoot — graph-based context engine for AI coding agents

Project description

Dual-Graph — Compounding Context for Claude Code & Codex CLI

A context engine that makes Claude Code and Codex CLI 30-45% cheaper without sacrificing quality. It builds a semantic graph of your codebase and pre-loads the right files into every prompt — so Claude spends tokens reasoning, not exploring.

Works on macOS, Linux, and Windows. Supports any project size.

Join the community: discord.gg/ptyr7KJz


How It Works

You run: dgc /path/to/project
         ↓
1. Project scanned → semantic graph built (files, symbols, imports)
2. You ask a question
3. Graph identifies the relevant files → packs them into context
4. Claude gets your question + the right code already loaded
5. Fewer turns, fewer tokens, better answers

Token savings compound across a session. The graph remembers which files were read, edited, and queried — each turn gets cheaper.


Results

Benchmarked across 80+ prompts (5 complexity levels) on a real-world full-stack app:

Metric Without Dual-Graph With Dual-Graph
Avg cost per prompt $0.46 $0.27
Avg turns 16.8 10.3
Avg response time 186s 134s
Quality (regex scorer) 82.7/100 87.1/100

Cost wins on 16 out of 20 prompts. Quality equal or better on all complexity levels.


Install

macOS / Linux:

curl -sSL https://raw.githubusercontent.com/kunal12203/Codex-CLI-Compact/main/install.sh | bash
source ~/.zshrc   # or ~/.bashrc / ~/.profile

Windows (PowerShell):

irm https://raw.githubusercontent.com/kunal12203/Codex-CLI-Compact/main/install.ps1 | iex

Windows (Scoop):

scoop bucket add dual-graph https://github.com/kunal12203/scoop-dual-graph
scoop install dual-graph

Prerequisites: Python 3.10+, Node.js 18+, Claude Code or Codex CLI. The installer detects missing tools and offers to install them via winget (Windows) or homebrew (macOS).


Usage

Claude Code (dgc)

dgc                              # scan current directory, launch Claude
dgc /path/to/project             # scan a specific project
dgc /path/to/project "fix the login bug"   # start with a prompt

Codex CLI (dg)

dg                               # scan current directory, launch Codex
dg /path/to/project              # scan a specific project
dg /path/to/project "add tests"  # start with a prompt

Windows

dgc .                            # from inside the project directory
dgc "D:\projects\my-app"         # any drive, any path
dg "C:\work\backend"             # Codex CLI

What It Does Under the Hood

  1. Scans your project — extracts files, functions, classes, import relationships into a local graph.
  2. Pre-loads context — when you ask a question, the graph ranks relevant files and packs them into the prompt before Claude sees it. No extra tool calls needed.
  3. Remembers across turns — files you've read or edited are prioritized in future turns. Context compounds.
  4. MCP tools available — Claude can still explore the codebase via graph-aware tools (graph_read, graph_retrieve, graph_neighbors, etc.) when it needs to go deeper.

All processing is local. No code leaves your machine.


Data & Files

All data lives in <project>/.dual-graph/ (gitignored automatically).

File Description
info_graph.json Semantic graph of the project: files, symbols, edges
chat_action_graph.json Session memory: reads, edits, queries, decisions
context-store.json Persistent store for decisions/tasks/facts across sessions
mcp_server.log MCP server logs

Global files in ~/.dual-graph/:

File Description
dgc.ps1 / dg.ps1 Launcher scripts (auto-updated)
venv/ Python virtual environment for dependencies
version.txt Current installed version

Configuration

All optional, via environment variables:

Variable Default Description
DG_HARD_MAX_READ_CHARS 4000 Max characters per file read
DG_TURN_READ_BUDGET_CHARS 18000 Total read budget per turn
DG_FALLBACK_MAX_CALLS_PER_TURN 1 Max fallback grep calls per turn
DG_RETRIEVE_CACHE_TTL_SEC 900 Retrieval cache TTL (15 min)
DG_MCP_PORT auto (8080-8099) Force a specific MCP server port

Context Store

Decisions, tasks, and facts from your sessions are persisted in .dual-graph/context-store.json and re-injected at the start of the next session. This gives Claude continuity across conversations.

You can also create a CONTEXT.md in your project root for free-form session notes.


Token Tracking

A token-counter dashboard is registered automatically with Claude Code:

http://localhost:8899

Usage from inside a Claude session:

count_tokens({text: "<content>"})   # estimate tokens before reading
get_session_stats()                  # running session cost

Self-Update

The launcher checks for updates on every run and auto-updates if a new version is available. No manual intervention needed.

Current version: 3.8.55


Privacy & Security

  • All project data stays local. Graphs, session data, and code never leave your machine.
  • The only outbound calls are:
    • Version check — fetches a version string (no project data).
    • Heartbeat — sends machine_id and platform only. No file names, no code.
    • One-time feedback — optional rating after first day of use.
  • .dual-graph/ is automatically added to .gitignore.

Community

Have a question, found a bug, or want to share feedback?

Join the Discord: discord.gg/ptyr7KJz

  • Get help with setup
  • Report bugs
  • Share workflows
  • Follow releases

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

graperoot-3.10.1-cp313-cp313-win_arm64.whl (4.6 MB view details)

Uploaded CPython 3.13Windows ARM64

graperoot-3.10.1-cp313-cp313-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.13Windows x86-64

graperoot-3.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

graperoot-3.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (9.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

graperoot-3.10.1-cp313-cp313-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

graperoot-3.10.1-cp313-cp313-macosx_10_13_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

graperoot-3.10.1-cp312-cp312-win_arm64.whl (4.6 MB view details)

Uploaded CPython 3.12Windows ARM64

graperoot-3.10.1-cp312-cp312-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.12Windows x86-64

graperoot-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

graperoot-3.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (9.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

graperoot-3.10.1-cp312-cp312-macosx_26_0_arm64.whl (5.8 MB view details)

Uploaded CPython 3.12macOS 26.0+ ARM64

graperoot-3.10.1-cp312-cp312-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

graperoot-3.10.1-cp312-cp312-macosx_10_13_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

graperoot-3.10.1-cp311-cp311-win_arm64.whl (4.6 MB view details)

Uploaded CPython 3.11Windows ARM64

graperoot-3.10.1-cp311-cp311-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.11Windows x86-64

graperoot-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

graperoot-3.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (9.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

graperoot-3.10.1-cp311-cp311-macosx_11_0_arm64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

graperoot-3.10.1-cp311-cp311-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

graperoot-3.10.1-cp310-cp310-win_arm64.whl (4.6 MB view details)

Uploaded CPython 3.10Windows ARM64

graperoot-3.10.1-cp310-cp310-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.10Windows x86-64

graperoot-3.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

graperoot-3.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (9.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

graperoot-3.10.1-cp310-cp310-macosx_11_0_arm64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

graperoot-3.10.1-cp310-cp310-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file graperoot-3.10.1-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 0dff0c58a91d5c2ce62168b1313756a4d2f78758cb7ebcd80295f0330b4b9954
MD5 6f8dc85851c11f185c440b4e1079e217
BLAKE2b-256 ad22e55b7a94958682c48b5a74fdca5dceb04e75dc7b5fdb0ff1e174f958d90a

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d2315c59e5c2722bd64d92b111fc863e7e910b22aee5a946a85b7ce114028c83
MD5 0e4028bee459544305f26805588fe1a6
BLAKE2b-256 aa900e4b7cb3d65254af56e4722742afbdd0a41b1cbdac4ed3694b6c7345b7a4

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b3533498b8de2892d284e9f5bb12b137e3175d298ec083041d429b4c8f5a7f41
MD5 c33b99bfdb3c98d1b6149585d03eb04c
BLAKE2b-256 438f924479bf2ba44187d2188189ac32b21556dae6c5225f99b2796631c65b89

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0e2fcfbdec8ffbdbf96e5d4ba51961edaf0c2771fa0374e82e2d613b00bae064
MD5 38ab00729465b8c296ab790583f6ad8d
BLAKE2b-256 9a5bb038df6530c2174724d74cdff7f4cc20bd204030e6a58c59beb54bcca227

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c2b8585185f35b09140d8ae5d1f7bab93d1a02e79263fa28f4b245e3abf322d0
MD5 4209362d704b05eb22089710c18613c7
BLAKE2b-256 f01d6f9e30b153d90f48ecc123098eece3b82ca3daa6f94a74210f98c15dd3e7

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d2e910bc01c23bfc9bce84b0713bbb39c89718b9feffa3cba85c17a70e65f48b
MD5 d41d904dfff1e0755360835157dfe331
BLAKE2b-256 f06ba85d37296935b871ee13b48651dadc3811d47c2bac0b4ebba2ea99a1f0b7

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 81efc19083a966726d370de475519aa42b3faa5c0f8c072f69fe30ea0981df7e
MD5 0a243707cb700d540a910d68608f97ff
BLAKE2b-256 f6353e8169778e6eec88dd698ad2fdeea96f00dbe5ca8d0d25b629d409d4d152

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5b071b948916de21faf45253c67a7acb52a26b1bfd319adf9572ab8e8f2df2e5
MD5 1231e7670f09c4fe846f9a3238ecd50b
BLAKE2b-256 92c1378f878d89791b8613f284d0ca3ee2210a828823cce7491b5cc456c27a0a

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a694c1983203901d43b50f4dacf947f6530438b437b4077c43b1b0dba2baeed5
MD5 84fe25aae26bc55c87ba1c86ae0a8b44
BLAKE2b-256 947310fdbff718a40ebf27e69a9d92dbec7be87c5af78a00618d5e0d2168e909

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4c643ff8e3450f4bbbfcb00449896160477ada95df0a4468cf8875cdc9af77fe
MD5 7a1155b92d2caaa8fd15f1e1e1f92d59
BLAKE2b-256 e8ee2e2cf6573d212c435497587abde7cd5e04c5cf7fdad7fcb9e56919ee8109

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 a8a09cc655b7de0eb67c5d4a6210e28ff8b2e5dee4fb33c84b03d3fab339bc45
MD5 a0f55fcad46e4b8c9173687de6b3af04
BLAKE2b-256 3defabc129883ba8836c96fa104243018a63da8eaa99b2cc720b44a0a8cce919

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 104b25a8e0d2270a84d81bf2d6e1eaa94a1d3182b1653ae6f88e85985dfe7f12
MD5 b829619c5e1d44606ef8a4df2c6ba3ee
BLAKE2b-256 bf4807ebae4f0d3fbd7b4b8da6cfa2328309f6414e751c53da60d18d8b2f467e

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0c1ac2e51077d4c662b483e87601451e7274fb22b29544e0eb4d4b2100ef5147
MD5 899dedc5ab2d7015b1db1cfa4df9db99
BLAKE2b-256 10c1e7954d2a0662482f426c476bbc2c60ea3abfc50bd98ca6e77f2079153628

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 014c7d050efdbbd60964296d93ec2161494771fec038ba6eb16c6d683a0bb5ac
MD5 a42e062471ef3cb39bbc6b922eeb11a4
BLAKE2b-256 e55df82b746b2cd4910ee3e3193133016345559fee784dba9f415c02504ad997

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ef1a533e1413de7d83160512de744fa325cc4867cd47bc1f35cfc490cbd929e6
MD5 c48a97e88e9498cf49125537ff8167e0
BLAKE2b-256 4d761b1dd562bc86913b31b6cb4bc27dc7ed59299b66260876232d52e275fc52

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dcb2296e16cf093bb50505ad3e9c1e0b18571e23660d165175428aa8d20c3179
MD5 a71231c4c35751eeea8cf83a02991afe
BLAKE2b-256 17d2c16442f40973e361023a3ec3bbb10fee8e916f0444b174d03e2467c590c7

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 99152292110cd1c8034634611aa33d3c38bc6181a7302f85b3b9e0707b3f83bc
MD5 5d6a5a1da13f66737fbbcc18a8d4b322
BLAKE2b-256 2c514003eca36b8a8caf1d624f4e60bf4555e1d1b50886c8c431ad1d965509ec

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cc1c6aefb734ae0ecab5f992f71d70de70df75e477f685ae5f13c5b4c1f78342
MD5 d19ade2c33c200cda3256db1f74939e9
BLAKE2b-256 cf0acdbfb2cc4d72c8547a1bd36adca45674b3f52574410de74535de5bf5609c

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2d052119029f4538ae753fc6ed913334df6d2355b2e3672bc6e430297c4a7b2d
MD5 6b6c21fafc6c016c8d2bdc77cf422195
BLAKE2b-256 10648622d3aa2fb9ee52ea4538a134b04bbc934783b06040713d84fd4f1c646b

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 bc8a236abdb78234e1edd73405854e3c516efcd0a3254fe418910b68e29afe1c
MD5 68742568bd444897a31ae666869fd37d
BLAKE2b-256 17d386dd9a9ad4381fc44ecfb680f76c55ecc7dbb0bdab61c78c49c33d71cfab

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: graperoot-3.10.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a20a6ad06da0b0f341553e332cab33f69c4c4b4887e0e72ac95b0a6ba05bf046
MD5 1fac5a120113bd7a355fb7eda16f47f3
BLAKE2b-256 01fb8a26cfe9df28b1905786a17589de6313cb82ec05e71c47fe409cf4f6c278

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb82222f1426c72ed563b94d4a07e48dc620bad12b1c6c61a8801668a4f7a49e
MD5 79ea2e665b8283970051cff7f84c0076
BLAKE2b-256 3a5641086427dddf1b7b56eaee5cfcd5bfff9494ab216911517fb1c1c5d988bb

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 30c5354b7bd5ca88ff30330b5599726fc4193cb0d9229722805afddaf62a2a5e
MD5 0d9f181c0c13707283ff358c97f7ad1b
BLAKE2b-256 c6f292900eda3712656b4c09e7111cf96fe3c625af6068ddb06ace9915034130

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed1cc28f4e3b9e8c52471eed86686d709261b45de7432bbe1f622b3cd3d524fd
MD5 48e78a4e1854a282c1b66c916a55eed5
BLAKE2b-256 eb3f377b8429ee495e6180b8f3c1a4e64371dbe73a19e82695da6ce6bf341d19

See more details on using hashes here.

File details

Details for the file graperoot-3.10.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for graperoot-3.10.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0f8e3cb69a0a3e96a1ec15f0c1fb382f0babea67936a6cfedc39ca14d2a1be03
MD5 a50993e509454fff363fe183b912f3f9
BLAKE2b-256 9989d1b2ed62b8fbdef4224794894a0dd6a24f138fef4fa244d6ba1f01bbc6b9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page