The software development platform for teams and agents

Plan, build, review and ship in one place. People and AI agents work together on one shared knowledge base.

People and data are fictional.

AI agents

Start an agent from any issue. It reads the issue and the knowledge base, writes the change in a branch and opens a merge request, as you.

  • In the cloud: a fresh machine per issue with Claude Code or Codex, on the AI credit of your plan or on your own API key. It sees the project through MCP tools and the knowledge base, and the machine is gone when the work is done.
  • On your computer: pick it in the same panel, and the desktop app starts the agent in your local clone, with your own subscription or API key. The platform keeps the record of what was done.
  • Everything goes under your account and your permissions. Protect the default branch, and changes reach it only through a merge request.
  • Write rules and skills for AI once, for the whole organization or for one project: every agent and the in-app assistant gets them, whichever tool it runs in.

Knowledge base

Everything your team has discussed, decided and built is searchable in one place. Ask a question and get an answer from your own project history, with the sources it came from.

Sourced from

  • Issues
  • Code reviews
  • Documents
  • Chat
  • Call transcripts
  • Git repositories

One knowledge base

answers under your permissions

Asked from

  • In-app assistantAsk on any screen.
  • Your coding agentConnect over MCP.

What it knows

Issues, code reviews, documents, chat, call transcripts and your git repositories. Nothing to write or maintain by hand: the base fills itself as the team works.

How it answers

Ask in plain words. The answer comes from your project, links to where it was found, and respects your permissions: you only see what you could open yourself.

Who can ask

Your team, from any screen in the app. Your coding agents, through the same connection they use to work with issues and code. One base, the same answers for people and agents.

Chat and calls

Talk where the work is: chat with threads next to issues and code, calls with screen sharing and recording, and notes that write themselves.

  • After a call you get a transcript, a summary and action items with owners, once participants consent. Voice and video messages are transcribed the same way.
  • A chat message becomes an issue in one step, and the thread stays attached to it.
  • Transcripts and summaries land in the knowledge base, so the assistant and your agents answer from what was said on the call.
Call page in code4.space with the recording, an AI summary by topics and action items with owners

Issues and boards

Custom fields, subtasks, checklists, saved filters and a timer on the issue. Boards with WIP limits, sprints and swimlanes.

  • Record a voice or video note and get a draft issue with a title and a description, ready to edit.
  • Create an issue from a chat message or ask the assistant to file one; the source stays linked.
  • Statuses, custom fields, sprints and time tracking per project, and saved filters shared with the team.
Project board in code4.space with issues grouped into columns by status

Git and code review

Git hosting with branch protection and Git LFS. Merge requests with per-line threads, suggested edits that land as a commit, and reviewer approvals.

  • Reviewers approve or request changes, per line and per merge request. AI review joins them as one more reviewer, and a merge request outline explains the change before you read the diff.
  • Required pipelines gate the merge. A package registry and a container registry live next to the code.
  • Your coding agent reads and searches the code over MCP, with ripgrep and symbol lookup, under your permissions.
Code review in code4.space with a diff, reviewers, linked issues and the build status

CI and deploys

Pipelines written in Java, Go or TypeScript, or a YAML file, on hosted runners or your own. Environments, approvals and rollbacks.

  • A deploy can wait for a named person to approve it, and a release is promoted from staging to production in one click.
  • Deploy to your own Kubernetes: an agent inside your cluster pulls deploy jobs, so credentials never leave it.
  • When a step fails, the assistant explains why from the logs.
Production environment in code4.space with a list of deployments, one waiting for approval

The Code4 Space loop

One idea, from where it was said to where people use it. People decide at every step; the platform carries the work between them and keeps the whole trail in one knowledge base.

Knowledge base2 linkedcallchat thread4 linkedcallchat threadissueprotocol doc5 linkedcallchat threadissueprotocol doccriteria6 linkedcallchat threadissueprotocol doccriteriaMR #147 linkedcallchat threadissueprotocol doccriteriaMR #14review8 linkedcallchat threadissueprotocol doccriteriaMR #14reviewbuild 128«Why do retries keep the original reference?»Decided by Priya on the weekly sync after the Svalbard passes; AURORA-T-2, shipped in build 128 via MR #14.callthreadAURORA-T-2MR #14build 128
  1. Step 1 of 7

    It starts where the team talks

    On the weekly sync Priya says retried uplinks must keep the original reference; the call leaves a summary and an action item. In Ground segment chat Kwame posts the pass log: the same command went out twice.

    Weekly synccall, transcript ready
    KKwame in Ground segment: pass log attached, SAFE_MODE_EXIT went out twice on the retried uplink.
    action item: PriyaCreate issue
  2. Step 2 of 7

    One click makes it an issue

    The message becomes AURORA-T-2. The log, the thread and the call fragment stay attached, and the knowledge base adds the uplink protocol document.

    AURORA-T-2Keep the original reference on retried uplinksfrom Ground segment
    Openthreadcall fragmentdoc: Uplink protocol v3
  3. Step 3 of 7

    Planned on the board

    Kwame puts it into Sprint 15. The assistant drafts three acceptance criteria from the base; he edits one.

    Sprint 15To do to In progress
    • Retry reuses the reference of the first attempt
    • Ground log shows one telecommand per pass
    • Covered by a test in uplink/retry
    criteria drafted by the assistant
  4. Step 4 of 7

    Done by a person or by an agent

    Lukas takes the issue. He can write the change himself in a branch, or click Agent and let it work in the cloud or on his computer: it reads the issue and the base, writes a failing test, then the change. Either way it ends as merge request #14, opened as Lukas.

    AURORA-T-2Lukas
    • MR #14 opened as Lukas
    • A failing test first, then the change
    In progressCreate branchAgent
  5. Step 5 of 7

    Reviewed by AI and by Sofia

    AI review leaves two comments, Lukas resolves them, the pipeline is green and Sofia approves.

    MR #14Keep the original reference on retryai/AURORA-T-2-keep-reference to main
    AI review: 2 comments, resolvedpipeline greenSofia approved
  6. Step 6 of 7

    Shipped with approval

    Build 128 is healthy on staging. Production waits for Priya; she approves from the notification.

    Build 128AURORA-T-2, MR #14
    staging: healthyproduction: waits for approvalApprove
  7. Step 7 of 7

    In the hands of the people who asked

    Build 128 is live. Three days later the Ground segment thread reads «clean passes all week, no duplicates», and that message is where the next loop starts.

    production
    KKwame in Ground segment: clean passes all week, no duplicates. Next: the retry window itself.
    build 128: healthyCreate issue
A worked example with an invented team. Every step is the product as it works today.

Try it on your project

Sign up with email, Google or Apple and create your organization. It starts with a 14-day free trial of Business, no card required, and then continues on the Free plan unless you choose a paid one.

Want hands-on help with setup for a new project? See the design partner program