Saltar al contenido

Docs / Inicio rápido

Quickstart

Install the GitHub App, drop a .maintainer.yml, and watch the first loop run: from issue triage to a merged PR.

This guide covers the full path: issue triage → AI dev dispatch → CI → merged PR. You can stop at any step, every feature is independently useful.

We are in closed beta. There is no open registration, so the steps below start once your account is approved. If it is not yet, request access first, we approve in batches.


1. Sign in, then install the GitHub App

Sign in at app.developerz.ai. An approved account gets the GitHub App install link in the dashboard; grant it access to the repositories you want managed.

Installing the App from GitHub before your account is approved does nothing useful, the repositories simply sit unmanaged until the approval lands.


2. Add a .maintainer.yml

Create .maintainer.yml at your repository root:

# yaml-language-server: $schema=https://developerz.ai/schemas/maintainer.v1.json
version: 1

Committing the file is the opt-in, so know what those two lines turn on. Every field is optional, but optional means the schema fills it in for you, not that it stays off. A file carrying only version: 1 enables:

Default What it means
pr.auto_merge: true the bot merges once the machine gates pass: CI green, a review verdict, and your branch protections. On free and OSS-verified accounts it stays opt-in and this default is forced off.
pr.require_review: true it never merges a head nobody reviewed, which is what makes the review gate above real
release.manager: release-please on merge it may cut tags and publish public GitHub Releases
ci.enabled: true your CI jobs may be placed on your enrolled boxes (the runs-on: developerz-* label is still the per-workflow opt-in)
ci.self_fix: true a red check on one of the bot's own PRs may be answered with a commit
tone.voice: friendly, handoff.mode: none friendly triage, and no handoff to a coding agent until you configure one

A repo with no .maintainer.yml runs hands-off instead: no auto-merge, no releases. The difference is deliberate, writing the file is how you say yes. See the .maintainer.yml reference for every field.

To start cautious and open up later, commit this instead. It is the no-file posture, stated explicitly, with everything else on:

# yaml-language-server: $schema=https://developerz.ai/schemas/maintainer.v1.json
version: 1
pr:
  auto_merge: false
release:
  manager: none

Editor autocomplete. The yaml-language-server comment wires the JSON Schema so you get validation and hover docs in VS Code, Cursor, and JetBrains.


3. Add your model key

developerz.ai is BYOK, bring your own key. We never proxy or resell tokens.

In the dashboard, go to Settings → Model keys and add your inference key:

Provider Key format
Anthropic sk-ant-…
OpenAI sk-…
Google Gemini AIza…
OpenAI-compatible (custom endpoint) any

Your key is encrypted at rest and never logged. See the security doc.


4. Watch the first loop

Open a new issue in your repo. Within seconds the bot will:

  1. Read the issue and check for duplicates.
  2. Ask for reproduction steps if required fields are missing (configurable).
  3. Qualify the issue: bug, feature, question, or dupe.
  4. Hand off to your coding agent if handoff.mode is set.

Every comment begins with the bot disclosure footer and is written to the audit log.


5. Enroll a box (AI devs + CI runners)

To run AI coding tasks or self-hosted CI, enroll a VPS or cloud VM:

# On your VPS, mint a token in Settings → Fleet → Add box, then:
read -rsp 'Enrollment token: ' DZ_ENROLL_TOKEN && DZ_JOIN="$(mktemp)" && \
  curl -sfL -H "X-Dz-Enroll-Token: $DZ_ENROLL_TOKEN" \
    https://api.developerz.ai/join -o "$DZ_JOIN" && bash "$DZ_JOIN"

The token travels in a header rather than a URL, and the script is downloaded to a temp file and then run, not piped into bash, so a truncated download cannot execute half an installer.

The installer prepares the box and enrols it. It does not start the runner service yet, so the box does not appear in Fleet → Boxes on its own, see after the join. The script's last line says which state it left the box in, either box <id> is ONLINE or ENROLLED, BUT NOT BEATING along with the remaining step.

If you would rather not paste a secret at all, register the host and let the platform connect over SSH instead, see bring your own boxes.

Requirements

Ubuntu, on x86_64 / aarch64 / arm64. At least 3800 MiB of RAM (a nominal 4 GB VM qualifies) and 20 GiB free on /, the installer checks both before it downloads anything and refuses below either floor. No inbound ports are needed.


6. Dispatch your first task

From Claude Code

Add the developerz.ai MCP server to your Claude Code config:

// .claude/settings.json
{
  "mcpServers": {
    "developerz": {
      "command": "mcp-remote",
      "args": ["https://mcp.developerz.ai"],
      "env": { "MCP_BEARER_TOKEN": "dev_pat_…" }
    }
  }
}

Create a PAT at Settings → API tokens with write:tasks scope, then:

Hey Claude, use task_create to dispatch "add pagination to the user listing endpoint"
to owner/my-repo as a gh task.

The bot scouts the repo, dispatches the task to your coding agent, and watches the resulting PR and CI before requesting merge.

From Claude Desktop

Same MCP config. Add developerz to your claude_desktop_config.json:

{
  "mcpServers": {
    "developerz": {
      "command": "mcp-remote",
      "args": ["https://mcp.developerz.ai"],
      "env": { "MCP_BEARER_TOKEN": "dev_pat_…" }
    }
  }
}

Then ask Claude Desktop to dispatch a task the same way.

From a phone (Claude mobile)

Claude mobile on iOS or Android adds developerz.ai as a connector via OAuth. the same flow Claude.ai on the web uses, no PAT to paste. See the MCP client onboarding page for the connector URL, the OAuth metadata document, and which clients are substantiated for mobile today.

For other mobile clients: any MCP-capable iOS or Android client that takes a PAT works the same way the desktop clients do. Point it at https://mcp.developerz.ai/v1/mcp with a Authorization: Bearer dev_pat_… header. No iOS/Android-specific config ships in this repo beyond the OAuth recipe for Claude mobile.


7. Enable CI runners

Change one line in any GitHub Actions workflow:

jobs:
  test:
    runs-on: developerz-2vcpu  # was: ubuntu-latest

Push the change. The next workflow run routes to your enrolled box. Logs are stored for 72 hours and downloadable from the dashboard or via the ci log_url MCP verb.

See the CI runners doc for the full security model and label reference.


8. Enable AI code review

Add a review: block to .maintainer.yml (or keep your existing .coderabbit.yaml the reviewer reads both, with the native block taking precedence):

review:
  profile: chill
  anti_noise:
    severity_floor: minor
    max_comments: 30

The reviewer triggers on every push to a PR. See the AI review doc.


What happens next

Feature Where to go
Policy fields .maintainer.yml reference
MCP verbs MCP verb reference
AI review AI code review
CI runners Self-hosted CI
Artifact storage Artifact storage
Realtime dashboards Realtime dashboards
REST API REST API
Escalations Escalations
BYOK details BYOK
Security Security

Every action is written to the append-only audit log. Nothing happens silently.