{"full_name":"kortix-ai/CompanyOS","owner":"kortix-ai","name":"CompanyOS","url":"https://github.com/kortix-ai/CompanyOS","description":"Kortix CompanyOS – the open-source operating system for your company. Multiplayer AI agents, your company as code, sovereign on your infrastructure or ours.","homepage":"https://kortix.com","topics":[],"language":"TypeScript","license":"NOASSERTION","avatar":"https://avatars.githubusercontent.com/u/170767358?v=4","created_at":"2024-10-05T17:01:01Z","pushed_at":"2026-11-10T09:34:54Z","metrics":{"stars":20622,"forks":3468,"watchers":150,"issues":1151,"prs":10931,"releases":237,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":0},"growth":{"day":{"stars":38,"forks":3,"base_day":"2026-11-09"}},"history":{"dates":["2026-11-09","2026-11-10"],"stars":[20584,20622],"forks":[3465,3468],"watchers":[150,150],"issues_open":[null,null],"prs_open":[null,null]},"boards":{},"same_owner":[],"issues":[{"number":12065,"title":"`kortix sessions new` refuses to start when a Claude subscription is the project's only model","comments":0,"created_at":"2026-11-08T02:44:00Z"},{"number":11891,"title":"security(self-host): the operator-address sign-up reservation fails open until the policy row exists","comments":0,"created_at":"2026-11-06T01:34:17Z"},{"number":11890,"title":"security(voice): a Meet guest can act as the trusted owner by taking their display name","comments":0,"created_at":"2026-11-06T01:34:16Z"},{"number":11873,"title":"Arcmira documentation MCP incorrectly described as requiring OAuth or an API key","comments":0,"created_at":"2026-11-05T22:26:22Z"},{"number":11871,"title":"security(kortixd): an agent can answer its own permission ask through its in-sandbox daemon","comments":0,"created_at":"2026-11-05T21:38:54Z"},{"number":11715,"title":"Feature request: Native local MCP bridge through the desktop app / agent-tunnel","comments":0,"created_at":"2026-11-04T05:53:46Z"}],"discussions":[],"latest_release":{"name":"v0.15.1 — Credit codes, server-side Goals, proactive Spaces, and image-heavy session fixes","tag":"v0.15.1","published_at":"2026-11-07T04:31:33Z","body":"Credit codes, server-side Goals, proactive Spaces, and image-heavy session fixes\n\nCredit codes, server-side Goals, proactive Spaces, and image-heavy session fixes\n\n### New\n- Credit codes: redeem a code at `/redeem` for credits, and a `/redeem?code=` link survives sign-up. Admins create codes with an expiry and a redemption limit. (#11939, #11944, #11945)\n- Goals run on the API: goal state lives on the server, and only a verifier session can mark a goal done. Goals are in the command palette. (#11910, #11882)\n- Proactive Spaces: a watcher reads a Space's event feed and speaks up only when it matters. A Space's agents are its router's team; the router does quick work itself and links results as files. (#11865, #11861)\n- Every agent gets its session ids, and a subagent can read its parent's conversation. (#11940)\n- Watcher Apps: watcher health on the App page, links from a run to its event, one-trigger tests, and a silent or crashing watcher can wake a repair agent. Deleting an App removes the triggers that name it. (#11908, #11907, #11906)\n- Hover Artifacts in the sidebar to open any artifact in one click. (#11905)\n\n### Improved\n- Spaces keep one conversation: agents read the thread's session log instead of copies. (#11896)\n- Only production reports product analytics; dev and staging send nothing. (#11937, #11936)\n- Old OpenCode-era code is removed. New audit rows of agent runtime events are named `agent.*` (old rows keep `opencode.*`): update a saved filter or SIEM rule on `opencode.`. (#11938)\n- 35 Artifact fixes: comments, drawings, rename, conflicts, load errors, ⌘S retry, link cards, share, hit areas and screen readers. (#11911, #11912, #11916)\n- The navbar GitHub link shows at every width; Goals buttons match the menu height. (#11887, #11884)\n\n### Fixed\n- Self-host updates apply migrations again: the API image ships every file the migration runner imports. (#11956)\n- Image-heavy sessions no longer fail with \"Input is too long\", on Bedrock and in Claude Code sessions. (#11934, #11943)\n- A session's Stop, probes and failed streams settle; a turn stays busy until it ends; one Stop sends one hold and one abort. (#11928, #11931)\n- Session streams end on access loss and never bleed between sessions; client lifecycles survive restarts, stalls and transient errors. (#11929, #11925)\n- Lifecycle status writes are compare-and-set, so a stale billing webhook never undoes a newer state. (#11932)\n- A session created during a deploy gets a retryable 503 instead of a failure. (#11933)\n- History recovery reads session stores larger than 256 MiB. (#11942)\n- The Desktop panel stops blinking. (#11930)\n- A click after the browser session went stale opens the page instead of the sign-in page. (#11922, #11921)\n- An App's restart budget and crash episode, and an app trigger's silence window, survive a deploy or an edit. (#11917, #11909)\n- Private channel threads and asks stay private. (#11868)\n- A malformed JSON request body gets 400, not 500; a Composio HTML error page becomes a short 502; edge rate-limit headers stay on every route. (#11881, #11897, #11893)\n- `send_message` drops a stray approve instead of refusing the message. (#11862)\n- An unknown code-fence language renders as plain text. (#11883)\n\n## What's Changed\n* feat(spaces): a Space's agents are its router's team; the router does quick work itself and links results as files by @markokraemer in https://github.com/kortix-ai/CompanyOS/pull/11861\n* fix(kortixd): send_message drops a stray approve instead of refusing the message by @markokraemer in https://github.com/kortix-ai/CompanyOS/pull/11862\n* fix(release): manifest writes keep \"all\"; the v0.15.0 release suite goes green by @DimitrijeGlibic in https://github.com/kortix-ai/CompanyOS/pull/11863\n* fix(ci): gitleaks allows pod checksums and the public PostHog client key by @DimitrijeGlibic in https://github.com/kortix-ai/CompanyOS/pull/11866\n* feat(spaces): proactive Spaces — a watcher reads the Space's event feed and speaks up only when"},"readme":true,"readme_zh":false,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}