Hop-State: A_06FN53K5SA61CBF0QR1S1Q0 Hop-Proposal: R_06FN53GJ19YH4AG7YMPVS60 Hop-Task: T_06FN4JDW51KJ8GC0YKC8ZW0 Hop-Attempt: AT_06FN531CDJPYM3W0Z1B6ETR
HopWeb
HopWeb is a collaborative forge for prompt-native software development.
It uses Git for durable source storage and Gitea for the proven forge substrate, but makes Hop's workflow the primary product model:
- a task captures the outcome someone wants;
- a prompt state records each instruction in its causal context;
- an attempt is an isolated line of human or agent work;
- a checkpoint freezes the exact tree that was evaluated;
- evidence records checks against that immutable checkpoint;
- a proposal is a reviewable candidate outcome; and
- an accepted state is the current shared truth.
The product thesis is simple:
GitHub organizes collaboration around commits and pull requests. HopWeb organizes human-agent collaboration around intent, attempts, evidence, and accepted outcomes.
Foundation
Gitea supplies the expensive, mature infrastructure we should not rebuild:
- Git transport, repositories, LFS, and permissions
- users, organizations, teams, OAuth, and access tokens
- issues, notifications, webhooks, releases, packages, and Actions
- administration, audit surfaces, and deployment primitives
Hop supplies the differentiating control plane and experience:
- prompt and state graph persistence
- task and attempt orchestration
- agent identity and attribution
- checkpoint-bound validation evidence
- proposal review and acceptance semantics
- a Hop-native repository, task, attempt, and review interface
See the product blueprint and the Gitea foundation decision.
First release
The first useful release is not a complete GitHub clone. It is a private, single-installation forge where a user can:
- create or import a repository;
- open a task with a prompt;
- launch one or more isolated agent attempts;
- watch states, diffs, and checks appear live;
- compare proposals by outcome and evidence; and
- accept one proposal into the repository's shared state.
Everything else should be inherited from Gitea until the Hop workflow proves that it needs a different abstraction.