moooon
Motir
Vibe the project. Bring an idea — Motir's three AI layers plan it, track it, and ship it, end to end. You're looking at Motir, built in Motir.
- Vibe Project
- Open Source
- AI Agent
- AI Loop
- 5
- 需求
- 4
- 赞同
- 390
- 已规划
- 4,206
- 已发布
- (motir-core) The design asset set becomes TWO files — `CLAUDE.md` § Design assets rewritten (notes + mock, a change is a new delta mock, no new `.pen`) and `design-three-file-set` stops requiring a `.png`Approval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) Decision — `design-result.md` AMENDMENT 4: a result is the changed mock(s) plus a link to the note, carries no screenshot, is published only when an open work item is `blocked_by` the design, and a change is a new delta mockApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- A design result shows only WHAT TO REVIEW — the changed mock with its note one link away, no screenshot, and published only when work waits on the designApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The `/items` project ROOT reads epics, then folders, then its other work items — the three-band level read, its paging, and the tree's client placementProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) `/items` renders its first-run empty state when the root holds folders but NO work items — the rule the design records, and the three E2E specs that assert itProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) Deleting the destination folder CARRIES the destination up — `deleteFolder` re-points the project in the same transactionProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) Story E2E — a person re-points the Bugs destination to a folder and to Project root, and the next filed bug lands thereProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) Story gate — integration vitest across the whole seam: created → seeded → re-pointed → filed, root, folder-delete carry-up, and the untouched planner markerProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The DESTINATION PICKER in the project-settings Bugs room — a folder or Project root, its route, and both message cataloguesProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The RESOLVER — one seam that answers where an unplaced bug is filed, and `fileBug`'s no-parent branch moved onto itProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) BACKFILL every existing project with a Bugs FOLDER destination — adopt a root folder already named Bugs, create one otherwiseProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) SEED the Bugs FOLDER at project creation — inside `insertProjectWithSeedsInTx`, beside the workflow and boardProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) SCHEMA — the project's nullable BUG-DESTINATION FOLDER pointer, its migration, and its same-project guardProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- Every project has a BUGS FOLDER — seeded with the project, and re-pointable to any folder or to the project rootProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core · design) The board REFUSES ON THE CARD — a drop onto the column a pending decision owns returns the card with the refusal and its door anchored to it, and every other refusal keeps the toastApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The pull request's MERGE RECORD — `merge_authority` and `merge_outcome_ref` on `github_pull_request`, written when Motir merges or enqueuesApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) Story VITEST gate — coverage over the merge arm, approve → merge → webhook → Done on real Postgres, and the one-status-writer and no-host-type guardsApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) AUTO mode — Motir merges a green run target's pull requests with no gate, and the pull request records that the project's setting authorised itApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The MERGE ENTRY POINT — merge or enqueue a gate's pull request after checking the gate is decidable, then decide it with the outcome; a refusal decides nothingApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The merge QUEUE — detect a base branch that requires one and ENQUEUE through the seam, returning the queue entry instead of a mergeApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join