N4darae/shrt
A contract-driven gRPC regression harness for AI coding agents, with human-approved baselines. Snapshot the valid call chains of an API so an agent can look one up instead of tracing for it. gRPC today, OpenAPI next
Build with Backblaze B2
SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.
Loading star history...
Where it stands
Rank, growth pace and release cadence relative to everything GStars tracks.
The project lists 3 contributors on GitHub.
Use Cases & Benefits
- Tests backend APIs through contract-driven chains of gRPC calls to detect regressions by comparing against human-approved baselines.
- Enables precise regression detection by snapshotting valid API call chains and automatically identifying field-level changes in responses.
- Use for validating gRPC backend services during continuous integration to catch unintended API behavior changes early.
- Use for creating reproducible API call sequences that document expected service behavior for manual or automated approval.
- Use for driving AI coding agents to generate and maintain API test contracts and chains based on service protobuf definitions.
Should you depend on it?
License terms, project hygiene and risks, from GitHub metadata and GStars' snapshots.
License
MIT
Permissive: commercial use, modification and redistribution are allowed with attribution.
Community files
- README: present
Watch-outs
- No GitHub releases; pin a commit or tag instead of a release.
General guidance from repository metadata, not legal advice. How we score
From the README
shrt tests a backend through chains of API calls. A chain is a YAML file: log in, create an item, add stock, read it back. You run the chains, a person approves a passing run as the baseline, and every later release is replayed against that baseline. When a field changes, shrt names the step, the field, and the write it suspects.
It was built to be driven by a coding agent (
shrt initinstalls a Claude Code skill and its docs), but every command works by hand, and the demo below is all by hand.shrt speaks the Connect protocol: each call is JSON over HTTP POST. A server built with connect-go answers it, since connect-go serves Connect and gRPC side by side. A server that speaks only gRPC (binary frames over HTTP/2, as plain grpc-go does) does not. Unary and server-streaming rpcs are supported; a streaming step reads the first message.
You need Go 1.26 or later, and buf on your
PATH: shrt compiles the backend's.protofiles withbuf buildto learn every rpc and message.Or build from a checkout with
go build -o shrt ./cmd/shrtand put the binary on yourPATH.The demo runs shrt against
examples/inventory, a small connect-go service with four rpcs:Login,CreateItem,GetItemandAddStock. Started with-release 2, it servesGetItemfrom a stale cache, and that is the regression the demo catches.Copy the example out of the checkout first.
shrt initwrites.shrt/,.claude/and a.gitignoreinto the directory it runs in.
Daily snapshots
Stars gained per day, and how forks and open issues moved, from GStars' daily snapshots
+192 stars over 2 days across 3 snapshot days; best day +131 on Nov 6.
Forks
158+13
Open issues
9+3
Compared with peers in API
Fastest-growing repositories GStars tracks in this cohort for the week of Nov 1, by 7-day star growth
| Repository | Stars | +7d | Health | Last release |
|---|---|---|---|---|
| vxcontrol/pentagi | 33.5K | +712 | 38 | 31 days ago |
| usebruno/bruno | 48.2K | +281 | 59 | 14 days ago |
| agentgateway/agentgateway | 6.0K | +183 | 60 | 9 days ago |
| mudler/LocalAI | 50.2K | +176 | 59 | 12 days ago |
| sveltejs/svelte | 88.6K | +77 | 65 | 9 days ago |
| N4darae/shrt | 2.3K | — | 8 | — |
| Category median | 48.2K | +183 | 59 | — |
Discover Repositories
Search across tracked repositories by name or description