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
- 499
- planned
- 4,801
- shipped
- (motir-core · test) Story test gate — coverage floor over `loadtest/` and the side-effect switches, the seams between seed manifest, scenarios, run output and report run for real, and guards that the preflight refuses a live sink, a Fly count ≠ N aborts, an `unmeasured` threshold never yields PASS and a 429 is never counted as success or errormotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) The runbook, `loadtest/README.md` — from a clean checkout: provision or reuse staging, refresh its branch from production, deploy a chosen SHA, seed, set N and run with one command, how each side-effect sink is checked, and how to read a report; every step one command and what it printsmotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) Report generator — a PASS/FAIL line per per-instance threshold and, at N > 1, the scale-out threshold against a named 1-instance report; P2028 counted from the staging app's logs; the 429 reading on its own line; one ranked first bottleneck from per-route latency, Fly CPU/memory, the wait/hold sink, pg_stat_statements, Neon load and the proxy limit; `unmeasured` blocks PASS; a saturated generator flagged; the full what-answered headermotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) The checked-in profile and the one run command — smoke and default shapes with mix ratio, agents per user and workspace, ramp, duration and every threshold; `--instances N` scales the staging `app` group, reads N back from Fly and aborts on a mismatch, scales offered load with N, runs the preflight and starts k6 on the `iad` generator machinemotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) k6 reader scenarios — signed-in sessions render /workbench and hold /api/workbench/stream open like a tab (open or reconnected counted at the end), and read the board, the items list and /api/plans/[id]motir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) k6 run-lifecycle scenario — each "runs" agent opens a dispatch run, reports step events and closes it through the same API calls `motir run` makes, against seeded scratch cards, with no agent container startedmotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) k6 agent scenarios over MCP — reads (get_work_item, search_work_items, skeleton, get_plan), writes (update_work_item, transition_status, add_comment, move_to_parent, add_plan_items on scratch plans), claims (claim_next_ready / claim_work_item) and the scalable 2026-10-13 move_to_parent burst, many agents per user and workspace, 429s tagged as their own outcomemotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) Seed synthetic tenants into a staging branch — signed-in users in real workspaces, many agents (personal access tokens) per user and per workspace as the profile sets, a resettable pool of scratch cards to claim and scratch plans to append to, and a manifest the k6 scenarios readmotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- (motir-core) Staging side-effect switches — email, GitHub writes, Sentry, motir-ai calls, fleet machines and billing each off or pointed at a sink under the staging environment, and a preflight that reads the deployed staging app and refuses to start a run while any of them is livemotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- Motir's emails arrive in the recipient's language — every transactional and notification email rendered in the recipient's saved language, the language they used with Motir when they have no account, English when Motir knows neitherMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Story integration test: per-recipient language through every sender, and all 18 templates rendered in all eleven languagesMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Guard test: every template arm and sender supplies a recipient language, none reads the current requestMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Public follow confirmation and digest use the language recorded on the followMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Organisation and agents senders use each member's language with localized dates: data export ready, ownership transfer, organisation deletion set, agents deletion noticeMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Notification senders use each recipient's language: mention, watcher comment, watcher transition, filter subscription, failed automation ruleMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Account and sign-in senders use the recipient's language: password reset, email change, two-factor code, workspace inviteMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Record the follower's page language on email-only public follows (PublicFollow column, migration, written at follow time)Motir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- Email language plumbing: recipient-language resolver (an address with an account but no saved language resolves English, never the recorded language), locale carried through the email.send payload to the template, lang on the HTML rootMotir in eleven languages — app.motir.co and motir.co in en·zh·ja·ko·de·fr·es·it·nl·pl·pt, per-language font sets, and work content in an org content language with per-user translation
- A hosted or agent-instance run's agent cannot call any Motir MCP tool its dispatch prompt names — record_run_discrepancy on a build-through, and the STOP branch's comment, Planning transition, append_plan_turn and submit_plan_session
- Design: the tab resumed after being hidden — several changes land at once (check design-notes § 26 first)motir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test