Skip to content

AI Agent Pipeline

Auto-generated by IssAssist Documentation Bootstrap ยท 2026-06-25 Review this page and remove [TODO: verify] markers as you verify each detail.


AI Agent Pipeline Guide

IssAssist uses a pipeline of AI agents to manage its development, taking a mission file through planning, implementation, testing, documentation, and release. This guide covers the pipeline, mission files, writing a good mission, and setting up tokens.

The Pipeline

The pipeline consists of 8 board columns:

  1. Project Manager
  2. Architect
  3. Developer
  4. Security
  5. Tester
  6. End-User Test
  7. Documentation
  8. Release

Each agent in the pipeline takes a mission file through the following stages:

  • Project Manager: validates missions, assigns Job-IDs (ISS000001 format), creates GitHub issues, and moves to Architect column.
  • Architect: generates staged build plans with sub-steps via Claude/Ollama, posts as issue comment.
  • Developer: implements one sub-step at a time, opens PRs.
  • Security, Tester, Documentation agents: what each checks and produces.

Mission Files

Mission files are stored in the MISSIONS/ directory. Each file has the following YAML frontmatter format:

title: <mission title>
version: <mission version>
status: <mission status (e.g., "in progress", "done")]
date: <mission date (YYYY-MM-DD)>
severity: <mission severity (e.g., "low", "high")]
tags: <comma-separated list of tags (e.g., "tag1", "tag2")]

Writing a Good Mission

A good mission file should have the following characteristics:

  • Clear title and description
  • Well-defined goals and objectives
  • Realistic timeline and resource estimates
  • Relevant stakeholders and team members involved
  • Well-structured YAML frontmatter format (title, version, status, date, severity, tags)

The PM Agent

The PM Agent is responsible for validating missions, assigning Job-IDs, creating GitHub issues, and moving to Architect column.

Example board.py code:

import os

# Get the current mission file
mission_file = os.path.join(Missions, "ISS000001.md")

# Validate the mission file (TODO: implement validation logic)
if validate_mission(mission_file):
    # Assign a Job-ID
    job_id = generate_job_id()

    # Create a GitHub issue
    create_github_issue(job_id)

    # Move to Architect column
    move_to_architect_column()

The Architect Agent

The Architect Agent generates staged build plans with sub-steps via Claude/Ollama and posts as an issue comment.

Example board.py code:

import os
from claudia import Claudia

# Get the current mission file
mission_file = os.path.join(Missions, "ISS000001.md")

# Generate staged build plans using Claude/Ollama
build_plans = generate_build_plans(mission_file)

# Post as an issue comment
post_as_issue_comment(build_plans)

The Developer Agent

The Developer Agent implements one sub-step at a time and opens PRs.

Example board.py code:

import os

# Get the current build plan file
build_plan_file = os.path.join(Missions, "ISS000001-01.md")

# Implement the sub-step
implement_sub_step(build_plan_file)

# Open a PR
open_pr()

Security, Tester, Documentation Agents

These agents check and produce the following:

  • Security: scans the code for vulnerabilities and reports issues.
  • Tester: tests the implementation to ensure it meets requirements.
  • Documentation: generates documentation for the implementation.

Example board.py code:

import os

# Get the current build plan file
build_plan_file = os.path.join(Missions, "ISS000001-01.md")

# Scan the code for vulnerabilities (TODO: implement vulnerability scanning logic)
scan_for_vulnerabilities(build_plan_file)

# Test the implementation to ensure it meets requirements
test_implementation()

# Generate documentation for the implementation
generate_documentation()

Human Control Points

Humans must drag a card on the board when:

  • The Security agent finds issues that require human review.
  • The Tester agent needs to test the implementation manually.
  • The Documentation agent needs to generate documentation.

Example board.py code:

import os

# Get the current build plan file
build_plan_file = os.path.join(Missions, "ISS000001-01.md")

# Check if human review is required (TODO: implement logic)
if requires_human_review(build_plan_file):
    # Drag the card to the next column
    drag_card_to_next_column()

Token Setup

Each agent needs its own fine-grained GitHub PAT. Tokens can be set up using the ISSAssist-Development/.env-global.example file.

Example .env-global.example code:

ISSASSIST_DEV_TOKEN=your_token_here

Running Agents

To run the agents, use the following command:

docker-compose --profile agents up -d
This will start all the agents in detached mode.