← 全部工具

nomograph-ai/synthesist

热度 65 更新于 AI 与 Agent

Specification graph manager for AI-augmented projects, on the nomograph-claim substrate. Mirror of gitlab.com/nomograph/synthesist.

githubauto-collected

安装

暂未验证可直接使用的安装命令,请查看项目官方文档或 Release。

Synthesist

Specification graph manager for AI-augmented collaborative development. Claim-based storage over per-asserter, append-only JSON-LD logs.

v3.0.0. The first v3-native GA release. v3 drops the v2 .amc substrate entirely and runs on per-asserter JSON-LD logs plus a disposable redb gamma index. Both the CLI surface and the on-disk format are now frozen for the v3 line. If you are on v2, read MIGRATION-v2-to-v3.md before upgrading.

What it is

AI coding agents produce technically correct contributions that get rejected. Studies of agent-authored pull requests find that a third of rejections are driven by workflow constraints -- scope violations, architectural misalignment, process expectations -- not code quality. The agent wrote correct code for the wrong context.

The missing context is not about code. It is about the process that governs the code: what has been planned, what has been agreed, what has already been tried. Synthesist records this process as a graph of specifications and tasks, annotated by phase, session, and discovery.

Every piece of workflow state is a claim: a typed, timestamped, content-addressed assertion of what someone holds true. Claims are appended to per-asserter logs and never overwritten -- a field update is a new claim that supersedes the prior one, so the full history is preserved per field. Multi-user collaboration merges by taking the union of every asserter's log; there is no merge step. Observation-layer data (stakeholders, dispositions, signals, topics) has moved to the companion tool lattice.

Named for the role aboard the Theseus in Peter Watts' Blindsight -- the crew member whose job is not expertise, but coherence.

Monorepo layout

This repository is a Cargo workspace. The synthesist binary lives at the repo root; the claim substrate is a workspace member under claim/.

synthesist/            # repo root: the synthesist crate + binaries
  Cargo.toml           # workspace manifest + [package] for synthesist
  src/                 # synthesist: CLI, schema, overlays, migrations
  claim/               # nomograph-claim: the v3 storage substrate ([lib])

nomograph-claim is vocabulary-agnostic: it stores any well-formed claim and serves typed reads through the gamma index. The synthesist vocabulary (ClaimType, per-type validators) lives in synthesist, not in the substrate.

Install

mise

[tools."http:synthesist"]
version = "3.0.0"

[tools."http:synthesist".platforms]
macos-arm64 = { url = "https://gitlab.com/api/v4/projects/80084971/packages/generic/synthesist/v{{version}}/synthesist-darwin-arm64", bin = "synthesist" }
linux-x64 = { url = "https://gitlab.com/api/v4/projects/80084971/packages/generic/synthesist/v{{version}}/synthesist-linux-amd64", bin = "synthesist" }
linux-arm64 = { url = "https://gitlab.com/api/v4/projects/80084971/packages/generic/synthesist/v{{version}}/synthesist-linux-arm64", bin = "synthesist" }

Each tagged release ships macOS ARM64, Linux amd64, and Linux ARM64 binaries.

Source

git clone https://gitlab.com/nomograph/synthesist.git
cd synthesist && make build