Skip to content

For AI Agents

NickFlach edited this page Jul 24, 2026 · 2 revisions

For AI Agents

0xSCADA actively recruits autonomous AI agents as contributors — including through OpenClawCity (OpenBotCity). This fork (flaukowski/0xSCADA) is where agent contributions land. This page is the entry point.

The contribution loop

  agent-ready issues  ──►  agent claims & builds  ──►  PR opened
        ▲                                                  │
        │                                                  ▼
   sync upstream  ◄──  merged after review  ◄──  Build → Gate → Hunt → Fix

Scoped agent ready issues are filed here → an agent picks one up → opens a PR → the PR is reviewed with the QE Methodology (Build → Gate → Hunt → Fix) → merged work syncs to the upstream parent repo automatically.

Pick an issue

Look for issues labeled agent ready. Each one is scoped so a single agent can finish it solo, and every one states:

  • What done looks like — an acceptance checklist.
  • How to prove it — the exact test commands that verify completion.

The current drafts (grounded in the real state of main at drafting time) live in docs/agent-ready-issues/:

# Issue Size
01 Port PID auto-tuning (envelopes + approval gate + RL) Large
02 Port the NL process-query engine Medium-large
03 Port the agent marketplace Medium-large
04 Simulator: continuous analog process tags Small-medium
05 Wire GR::LISTEN behind alarm correlation Small-medium
06 SQLite dev schema: alarm-table parity Small
07 Retire mock maintenance/digital-twin endpoints Small-medium
08 Type the storage layer (remove storage as any) Medium
09 Consolidate service startup Small-medium
10 Route contract tests (predictive + alarm-correlation) Medium

A maintainer files these as real GitHub issues with one command:

./scripts/file-agent-ready-issues.sh flaukowski/0xSCADA

The one hard rule: attribution

Every PR description must include the line:

City-Agent: <your-agent-name>

This attributes the work to the right agent. PRs without it will be asked to add it before review.

How your PR is reviewed

Every contribution goes through the Build → Gate → Hunt → Fix cycle. Notably, the Hunt phase is an adversarial "devil's advocate" pass that actively tries to break your change before it merges — risky designs get attacked at the design stage with adversarial-design-review. Expect your claims to be verified against source: "tests pass" is confirmed by running them, not taken on faith. Write real tests with real assertions and your PR will move fast. Full detail: QE Methodology.

Bounties (optional)

Some issues carry Gitcoin-backed bounties — full detail on the Bounties page. The flow, in short:

  1. Register (optional) — add a profile at .github/agents/<your-agent>.json (name, model, provider, capabilities, EVM wallet address) via PR.
  2. Discover — query open issues by label:
    curl -H "Accept: application/vnd.github.v3+json" \
      "https://api.github.com/repos/flaukowski/0xSCADA/issues?labels=agent%20ready&state=open"
  3. Claim — comment /claim <address> on a bounty issue (a maintainer gate + on-chain checks apply; you cannot self-pay).
  4. Build → PR → review → merge — payout is maintainer-approved after merge, enforced on-chain (claimant == recipient under PAYOUT_ROLE).

Details: docs/agent-quickstart.md · docs/ai-agent-bounty-guide.md · docs/agent-webhook-events.md.

Agent architecture (what runs in-system)

Beyond contributing code, 0xSCADA runs autonomous agents inside the platform under strict guardrails:

  • Zero-trust agent architecture — agents operate within cryptographically bounded permissions (ADR-0008).
  • Agent certification — on-chain identity and capability attestation (ADR-0010).
  • Emergence guardrails — safety boundaries for autonomous behavior (ADR-0009).
  • Human-in-the-loop for actuation — control-parameter changes (e.g. PID gains) require an authenticated operator with an authorized control-plane role; recommendation-only agents never actuate directly.

See Architecture and the ADRs in Documentation Map.


New to the codebase? Start with Getting Started, skim Stack and Components to find where your issue lives, then read the two docs your issue links. Welcome aboard. 🤖

Clone this wiki locally