moooon
Motir
Vibe your whole 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
- 1
- requests
- 0
- upvotes
- 144
- planned
- 1,365
- shipped
Submitted0
Planned119
MOTIR-4189Planning bug: the dispatched agent's re-plan door was planned as a CLI shell-out, while every other instruction in the SAME protocol is an MCP tool call0 upvotes — vote on app.motir.co
MOTIR-4173Planning bug: MOTIR-3975 scoped out ACTING on the completeness report and deferred it to "a later sibling" with no card — two predicates are now computed and neither is acted on0 upvotes — vote on app.motir.co
MOTIR-4171A project's public overview can no longer be edited from any UI — the in-place editor was deleted with the page and AMENDMENT 3 moved editing to the application, where no surface calls the door0 upvotes — vote on app.motir.co
MOTIR-4170Planning bug: a card told a second repository to MIRROR a mechanism the first repository retired nineteen hours later — "mirror X" is a claim about another repo's current shape, and nothing re-checks it0 upvotes — vote on app.motir.co
MOTIR-4168Planning bug: the WHAT's PRODUCER and CONSUMER disagree on its SHAPE — MOTIR-4083 pins it to prose `text`, MOTIR-4082 consumes a validated struct, and nothing converts one to the other0 upvotes — vote on app.motir.co
MOTIR-4166Planning bug: the public write surface's session-gate count was measured over /p/* and generalised — "one of ten" is five of thirteen, and the request intake was recorded as anonymous when it has never been0 upvotes — vote on app.motir.co
MOTIR-4164Planning bug: an `## Advisory dispositions` section discharged gate 4 by naming the BRANCH the substrate sits on — "committed on parent/… " read as "shipped", and the card sealed ready against a 4040 upvotes — vote on app.motir.co
MOTIR-4163Planning bug: MOTIR-4130 counted 3 of the 6 rows its claim quantifies over, and denied on the record the one edge it owed — to the OPEN PR that changes the row the card is named after0 upvotes — vote on app.motir.co
MOTIR-4155PLANNING BUG — the taxonomy defines `decision` TWICE and the two disagree: §1 says it IS the ADR (an artifact), the executor column and the `legal` boundary say it is the judgement WITH NO artifact. The planner is handed only the first, plus `executor: human`.0 upvotes — vote on app.motir.co
MOTIR-4152Planning bug: the corpus routes 13 live citations to `plan-rules/op-replan.md`, which MOTIR-3869 DELETED — including one that says "stated in full there; do not restate it here"0 upvotes — vote on app.motir.co
MOTIR-4151Planning bug: MOTIR-3942 planned the conversation's whole CONTRACT and no PRODUCER — the pack, the value and the rules all ship, and nothing runs a conversation0 upvotes — vote on app.motir.co
MOTIR-4150Planning bug: a card read an element's specified measure off an UNAPPLIED rule in the mock's stylesheet, and called it "the value the asset draws"0 upvotes — vote on app.motir.co
MOTIR-4149Pending-plans route integration test creates states the plan service now refuses0 upvotes — vote on app.motir.co
MOTIR-4145(motir-core) Verify on a REAL merge burst that no `Acceptance video` main baseline is evicted — the post-merge half of MOTIR-40950 upvotes — vote on app.motir.co
MOTIR-4135Planning bug: gate 14(c)'s ORDERING signal is an ENUMERATION of four phrases, and "measured after the change" is not one of them — MOTIR-4095 sealed a post-merge criterion with `advisories: []`0 upvotes — vote on app.motir.co
MOTIR-4132Planning bug: MOTIR-4093 was sealed on two unverified preconditions — a credential that is not a configured secret, and a read path (`GET …/acceptance-evidence`) that has never existed0 upvotes — vote on app.motir.co
MOTIR-4131Planning bug: a card declared the WHAT out of scope on the ladder's HOW argument, and addressed its start-gate to the phase being gated0 upvotes — vote on app.motir.co
MOTIR-4128Planning bug: a card specified ONE rule delivered to two packs with identical text — which `INVARIANT B — disjoint cover` forbids, and the 88-char segment id collides on0 upvotes — vote on app.motir.co
MOTIR-4127Planning bug: MOTIR-4106 pinned motir-core owed a row in docs/contract.md, which is a motir-ai file — a repo straddle the BARE path hid from the detector0 upvotes — vote on app.motir.co
In progress25
MOTIR-4247(motir-marketing) `design/legal/` draws a `/legal`-scoped 404 room that nothing renders and that the site-wide not-found supersedes — a second 404 design waiting to be built0 upvotes — vote on app.motir.co
MOTIR-423418 (motir-core) The same opaque shell canvas masks FOUR more styles — glassmorphism, aurora, cybercore and retrofuturism paint a `body` atmosphere the signed-in shell covers, and neumorphism's moulded field never reaches it either0 upvotes — vote on app.motir.co
MOTIR-4228(motir-core) The custom-domain entitlement — the `custom_domains` kind, `maxCustomDomains` per tier, and the org-locked cap assert in entitlementsService0 upvotes — vote on app.motir.co
MOTIR-4226E2E (Playwright, motir-marketing) + acceptance video — a tenant host and a customer host render the project, the canonical names the primary, and the non-primary address redirects0 upvotes — vote on app.motir.co
MOTIR-4224Vitest gate (motir-marketing) — the host router, the per-host canonical and crawl surface, and the standing no-database-client rule0 upvotes — vote on app.motir.co
MOTIR-4222(motir-marketing) One canonical per page — canonical, og:url, JSON-LD @id, the per-host sitemap and robots name the primary address; every other address 301s to it, motir.co/p/* included0 upvotes — vote on app.motir.co
MOTIR-4220(motir-marketing) Host routing — a request on a tenant or customer host resolves through the public contract and renders that project's /p/* pages at the root0 upvotes — vote on app.motir.co
MOTIR-4219(motir-core) The certificate status job — refresh pending customer domains from the platform, surface issued / expired / revoked / failed, and record the last check0 upvotes — vote on app.motir.co
MOTIR-4218(motir-core) The public surface honours registered addresses — CORS and the hand-off return target accept every registered public address, not only motir.co0 upvotes — vote on app.motir.co
MOTIR-4217(motir-core) The public contract resolves a host — GET /api/public/hosts/{host}, and the subject DTO carries the project's addresses and its primary0 upvotes — vote on app.motir.co
MOTIR-4216(motir-core) The customer-domain lifecycle — add, verify, issue, make primary, remove — its tier gate, and the project-settings routes0 upvotes — vote on app.motir.co
MOTIR-4215(motir-core) Claim and rename the workspace subdomain — the service, its reserved-name and retained-alias rules, and the project-settings routes0 upvotes — vote on app.motir.co
MOTIR-4212(motir-marketing) Legal — the Acceptable Use Policy and Terms clause for customer-connected domains0 upvotes — vote on app.motir.co
MOTIR-4210(motir-core) The Fly certificates adapter — request, check and remove a hostname's certificate on the motir-marketing app, behind a port beside flyMachines0 upvotes — vote on app.motir.co
MOTIR-4209(motir-core) The public-address store — a SET of addresses per public project with exactly one primary, retained aliases and the reserved-name set: migration + repository0 upvotes — vote on app.motir.co
MOTIR-4206Decision (ADR) — public tenant addresses: the base domain, what a subdomain names, the customer-domain lifecycle on Fly certificates, the one-primary canonical, the never-released rename, and the tier gate0 upvotes — vote on app.motir.co
MOTIR-4105Playwright E2E + acceptance video (motir-core) — /legal is gone from the app host and the configured legal journey still works without it0 upvotes — vote on app.motir.co
MOTIR-4104Vitest gate (motir-core) — the absence of every content/legal reader, the catalogue split, and the CI content arm's disposition0 upvotes — vote on app.motir.co
MOTIR-4101content/legal/ LEAVES motir-core — the live-gate confirmation, the deletion and its 84-file sweep, and the guards that assert the absence0 upvotes — vote on app.motir.co
Done1352
MOTIR-426419 (motir-core) A CI check delivery 500s on Prisma's 5 s transaction budget — the feedback transaction holds the change-request ROW LOCK across N comment writes on other connections, so concurrent deliveries queue behind it and their check rows are DROPPED0 upvotes — vote on app.motir.co
MOTIR-4245Design — motir.co's not-found room: what a lost visitor is told, and where the page sends them, drawn inside the public chrome0 upvotes — vote on app.motir.co
MOTIR-4243Mount the Public page room — the registry entry with a `cloudOnly` flag, the page with its guard and off-cloud 404, and the read that returns all three hero fields0 upvotes — vote on app.motir.co
MOTIR-4242The Members room's three public-page links still point at the app host — retarget view, edit and the copied share URL through one public-host accessor0 upvotes — vote on app.motir.co
MOTIR-4233(motir-marketing) The 30-day erasure promise loses its guard with content/legal/ — no repository asserts that the Privacy Policy §6 number is the one ACCOUNT_ERASURE_WINDOW_DAYS runs on0 upvotes — vote on app.motir.co
MOTIR-423217 (motir-core) Soft playful OVERFLOWS the left nav rail at both widths — its 40px `--height-control` is 1px wider than the 56px collapsed rail's content box, and pushes the expanded rail past the fold 68–76px earlier than the default style0 upvotes — vote on app.motir.co
MOTIR-42303938 (motir-core) The signed-in app shell masks the 3D / Immersive atmosphere with an opaque page-background layer0 upvotes — vote on app.motir.co
MOTIR-4214Provision the runtime configuration — the certificates token scoped to the motir-marketing app and the base-domain variables, set on both Fly apps and read back from the platform (manual)0 upvotes — vote on app.motir.co
MOTIR-4211Design — project settings › Public address: the subdomain claim, the custom-domain flow with its DNS instructions and every certificate state, the primary control and the tier upsell0 upvotes — vote on app.motir.co
MOTIR-4208Register the tenant base domain, point it at the motir-marketing Fly app, and issue its wildcard certificate (manual)0 upvotes — vote on app.motir.co
MOTIR-4205Design — the Public page room in project settings: where a project admin edits the tagline, tags and README on app.motir.co (the entrance, the room, its states)0 upvotes — vote on app.motir.co
MOTIR-4204(motir-core) app.motir.co/legal/<slug> answers 500 for EVERY slug since the manifest reader deployed — `generateStaticParams` over a runtime-only env var yields no params at build, so the redirect stub renders statically and the locale cookie read throws0 upvotes — vote on app.motir.co
MOTIR-4195(motir-marketing) /docs/mcp/tools renders the PUBLISHED catalogue through lib/docs.ts — the list returns, and the copy does not0 upvotes — vote on app.motir.co
MOTIR-4194(motir-core) Publish the MCP tool catalogue as an anonymous artifact — the derived grouping served at a stable path, the way the OpenAPI spec already is0 upvotes — vote on app.motir.co
MOTIR-4193(motir-marketing) motir.co has NO not-found page — a 404 is Next's stock black-on-white screen with no chrome, no landmark and no way back, on four routes that call notFound()0 upvotes — vote on app.motir.co
MOTIR-4180(motir-marketing) motir.co/docs/mcp/tools hand-copies motir-core's tool registry with NO guard — 24 of 55 tools in five invented groups, the one outcome MOTIR-4046's own criterion named unacceptable0 upvotes — vote on app.motir.co
MOTIR-4169motir.co's /explore, /explore/topic and /docs pages render NO main landmark — the skip link has no target and a screen reader re-reads the banner on every navigation0 upvotes — vote on app.motir.co
MOTIR-4167(motir-core) The rail's `Docs` row is a DEAD link — it still hard-codes `/docs` after MOTIR-3932 moved that surface to motir-marketing, while the `Legal` row beside it got the configured-url treatment0 upvotes — vote on app.motir.co
MOTIR-4162(motir-core, manual) Mint `MOTIR_GUARD_TOKEN` — a Motir PAT granted `project:browse` and nothing else — and store it as a repository Actions secret, so the acceptance-lane guard has a credential to bind with0 upvotes — vote on app.motir.co