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
- 6
- requests
- 4
- upvotes
- 488
- planned
- 4,828
- shipped
- One GitHub account linked to several organisations, each with its own repositoriesOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Story integration test: two orgs on one installation — isolation, refusal, webhook routing, disconnect, uninstall, re-install (motir-core)Onboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Disconnect the account from one org: remove only that org's link and repos, leave the installation and other orgsOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Webhooks resolve per owning org; GitHub-side uninstall removes every org's link and reposOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Connect flow API: org-scoped signed install state, list accounts the App is already installed on, link existing installation, refresh in placeOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Install service: link an installation to an org and claim a chosen repo subset without overwriting or pruning other orgsOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Data model: org↔installation link and per-org repo ownership, with unique-repo guard and backfill of existing single-org installsOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- Story E2E and acceptance video: link one account to orgs X and Y with disjoint repos (motir-core)Onboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- The drafting cue and the progress line cite a design Part and a mock that resolve to another design — and to no file at all
- Settings → Organisation → Git UI: account picker, repo picker with unavailable and none-left states, connected list, disconnect confirmationOnboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- FleetInventoryUnavailableError: Could not list machines in motir-inst-e3ba1f50887009af: The fly orchestrator refused a call (HTTP 502).. Nothing was destroyed there.
- Error: An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance…
- (motir-ai) Migrations stay readable by the previous release — the expand/contract rule written down, and a CI check that fails a migration dropping or renaming a column, table or enum value, proven red by a planted migration
- (motir-core) Design the "resuming" state of a plan's progress — the progress line in the rail, the overlay and the Workbench › Planning row while an automatic resume waits for its first write (a delta of the progress design)
- (motir-core) The Server Components render error recurs on `/workbench` and other authed routes after MOTIR-8214 — a stalled request's client face, not a page defect
- Explicit prompt caching for Qwen tool sessions (gateway forwards cache_control, motir-ai marks, both meter writes)
- (motir-core) Design the migrate wizard and the importer in the hero-and-sections layout, and the logo-and-voice pass on the discovery canvas, chat rail, onboarding top bar and direction-doc pages (their working layout kept)Onboarding that matches motir.co — the Motir look and "vibe the project" voice, a GitHub connect that does not lose you, no waiting on the index, a generated first-project name, and import proven against real Jira, Linear and Plane
- (motir-core) The planning overlay cannot say a prompt was too large for the model — motir-ai's new walkStop reason `prompt_too_large` is outside core's closed failure vocabulary, so it falls back to "the AI provider was unavailable"
- Two concurrent Resumes on one failed planning session can still refuse the loser with SESSION_NOT_FAILED instead of RESUME_ALREADY_STARTED
- TypeError: Cannot read properties of undefined (reading '_count')