reqloop is the official Baton marketplace
for requirement-level engineering loops. It is a multi-plugin repository: every
directory under plugins/ is an independently versioned Baton PluginPackage,
while the repository root owns only marketplace discovery and shared
plugin authoring rules.
A Baton Plugin coordinates a long-running domain loop, but it does not call a Harness directly. It proposes or submits scoped work through Baton's normal input, context, permission, and routing path. Harnesses provide intelligent execution capabilities, while Harness Plugins such as devloop constrain the development loop inside a Harness.
ReqLoop connects requirement, code, review, CI, and deployment systems; turns their state and durable user decisions into Resources; and gradually advances from observation and recommendations toward explicitly scoped automation.
The intended end-to-end development flow is:
develop a plugin
→ build and validate its manifest
→ link the marketplace or plugin into Baton
→ create and enable a PluginInstance in /plugins
→ activate its PluginBinding
→ use its command and Resource/Reconcile workflow
→ restore the same loop after Baton restarts
The repository grows with Baton's external plugin runtime. Hello validates the
smallest Package lifecycle; Hello Counter and Turn Coach exercise
Resource/Reconcile, Baton-owned Resource watches, and durable proposals; ReqLoop is
the first requirement-loop Package, contributes /requirements, and observes
external devloop review state.
Register this Git repository as a Marketplace and install the Package you need:
baton plugins marketplace add https://github.com/compforge/reqloop.git
baton plugins install qiankunli/turn-coach --marketplace reqloop
baton plugins install qiankunli/reqloop --marketplace reqloop
baton plugins listFor local development, replace the Git URL with the path to your checkout:
baton plugins marketplace add /path/to/reqloopPackage installation makes it available to Baton. To use it in a session, start
baton, enter /plugins, open Installed, select the Package, and choose
Enable in this session. Turn Coach reviews completed turns and recommends the
next step; ReqLoop observes devloop review completion for the session's current
repository, asks the user to accept or ignore actionable comments once, and
proposes a Harness fix only when accepted.
.baton-plugin/marketplace.json Marketplace index
plugins/<plugin-name>/ One independently versioned Baton plugin
docs/reqloop.md Requirement Loop domain and Connector design
docs/baton-plugin-harness.* Baton Plugin and Harness relationship
docs/reqloop-workflow.* ReqLoop workflow (SVG and PNG)
CONTRIBUTING.md Rules for adding a plugin
AGENTS.md Architecture and maintenance constraints
Plugin domain models and Connectors stay inside their owning plugin. Baton core only supplies the generic Package, Instance, Binding, Resource/Controller and Proposal contracts.
- Hello — a minimal
0.0.1Package for validating Marketplace discovery, installation, and loading. - Hello Counter — demonstrates a writable
Resource combined with a
baton.turnController. - Turn Coach — an end-to-end canary for Baton-owned Resource replay, persistent state, and proposed input.
- ReqLoop — requirement-level coordination;
0.1.18connects Workspace, Repository, PullRequest, and Requirement Resources, exposes active requirements as Harness context, and aggregates delivery and review progress on the Board.
See the Requirement Loop design for the domain model, Connector boundary, and Harness collaboration model.
See CONTRIBUTING.md before adding a plugin.