Skip to content
/

Disciplined-AI-Software-Development (Varietyz)

brian-disciplined-ai · Varietyz/Disciplined-AI-Software-Development · ★ 402 · last commit 2026-04-02

Primitive shape
No installable primitives
00

Summary

Varietyz/Disciplined-AI-Software-Development — Summary

A methodology document collection (not a plugin or CLI) for disciplined AI-assisted development, authored by Jay Baleine. It ships a four-stage methodology framework (AI Behavioral Configuration → Collaborative Planning → Systematic Implementation → Data-Driven Iteration) with a unique dual-format instruction approach: every instruction is expressible in both natural-language Markdown and PAG (Pattern Abstract Grammar) — a structured keyword language with explicit validation gates.

The key behavioral constraint is file size ≤ 150 lines per module (≤ 250 for web components). Every project must build benchmarking infrastructure, CI/CD, test suites, and core architecture before any application logic — "Phase 0" is mandatory.

The persona system ships 5 domain-specific personas (Guide, TechDoc, R&D, Visual, plus a persona creation template) to enforce behavioral consistency and prevent "AI drift" across extended sessions. The project extraction tool (scripts/project_extract.py) generates structured snapshots of codebases for sharing with AI sessions.

402 stars. CC BY-SA 4.0 licensed — the only framework in this batch with attribution requirements. Closest seed match is BMAD-METHOD (Archetype 1 — skills-only + persona framework) but Disciplined-AI targets web browser AI sessions (ChatGPT, Claude web) rather than CLI-based agents, and uses personas as behavioral constrainers rather than role-based workflow drivers.

01

Overview

Varietyz/Disciplined-AI-Software-Development — Overview

Origin

Created by Jay Baleine (Varietyz). Repository description: "A disciplined methodology for AI-assisted software development. Covers architectural constraints, validation hooks, session governance, and PAG (Pattern Abstract Grammar) for structured AI collaboration." 402 stars, Python language, CC BY-SA 4.0 license, last commit 2026-04-02.

Philosophy

The core problem: AI systems work on Question → Answer patterns. When you ask for broad, multi-faceted implementations, you get functions that work but lack structure, repeated code across components, architectural inconsistency over sessions, and behavioral pattern degradation.

The solution is four systematic stages with constraints, behavioral consistency enforcement, and validation checkpoints:

"Planning saves debugging time. Planning thoroughly upfront typically prevents days of fixing architectural issues later."

On decision processing:

"AI handles 'Can you do A?' more reliably than 'Can you do A, B, C, D, E, F, G, H?' — Decision Processing: AI handles focused objectives."

On context management:

"Small files and bounded problems prevent the AI from juggling multiple concerns simultaneously."

On PAG:

"PAG is particularly effective when you need explicit validation gates and constraint enforcement... ALWAYS: Keep files under 150 lines is less ambiguous than 'try to keep files small.'"

Core architectural constraint

File size ≤ 150 lines (≤ 250 for web components). This is the most concrete, measurable constraint in the methodology. The rationale:

  • Smaller context windows for AI processing
  • Focused implementation over multi-function attempts
  • Easier sharing and debugging

PAG (Pattern Abstract Grammar)

A structured instruction syntax designed to reduce interpretive ambiguity:

CONSTRAINT file_size_limit:
    SET max_lines = 150
    ALWAYS: Split files exceeding max_lines INTO separate_modules
    NEVER: Create monolithic files

CONSTRAINT separation_of_concerns:
    FOR EACH module IN codebase:
        VALIDATE module HAS single_responsibility
        VALIDATE module HAS clear_interfaces
    END FOR

Keywords: READ, WRITE, SET, VALIDATE, ALWAYS, NEVER, FOR EACH, END FOR.

02

Architecture

Varietyz/Disciplined-AI-Software-Development — Architecture

Distribution

  • Type: methodology-doc (copy to project)
  • Install: Copy claude-setup/ into your project
  • Install complexity: clone-and-configure

Install pattern

From the README:

"Copy claude-setup/ into your project to start."

(Note: the repo does not actually contain a claude-setup/ directory — the instruction is from the description. The actual methodology is in the root-level files.)

Directory tree

Disciplined-AI-Software-Development/
├── AI-PREFERENCES.md          ← AI behavioral configuration (prose)
├── CLAUDE.md                  ← Project-specific Claude guidance
├── METHODOLOGY.md             ← Full methodology (Markdown)
├── PAG-AGENT-ORCHESTRATION.md ← PAG for agentic workflows
├── PAG-COLLABORATION.md       ← PAG for collaborative AI sessions
├── README.md                  ← Entry point
├── example_project_structures/
│   ├── DISCORDJS_TEMPLATE_PROJECT.md
│   ├── PHICODE_RUNTIME_PROJECT.md
│   └── PHIPIPE_PROJECT.md
├── mermaid_svg/               ← Architecture diagrams
├── pag_templates/             ← PAG template files
├── persona/
│   └── JSON/
│       ├── CORE-PERSONA-FRAMEWORK.json
│       └── persona_plugins/
│           ├── GUIDE-PERSONA.json
│           ├── TECDOC-PERSONA.json
│           ├── R&D-PERSONA.json
│           ├── MURMATE-PERSONA.json
│           └── CREATE-PERSONA-PLUGIN.json
├── prompt_formats/            ← Markdown, XML, JSON format variants
│   └── software_development/
│       ├── XML/
│       │   ├── AI-PREFERENCES.XML
│       │   └── METHODOLOGY.XML
│       ├── JSON/
│       └── markdown/
├── questions_answers/         ← FAQ
└── scripts/
    └── project_extract.py     ← Codebase snapshot generator

Required runtime

  • Python 3 (for project_extract.py)
  • Any AI tool (web browser or CLI)

Target AI tools

Multi-tool. Explicitly designed for:

  • Web browser AI: ChatGPT, Claude (web), Gemini
  • CLI AI: Claude Code, Cursor, Windsurf

The dual Markdown/PAG format accommodates both: Markdown for web browser sessions, PAG for CLI agents with tool access.

03

Components

Varietyz/Disciplined-AI-Software-Development — Components

Methodology documents (core)

File Purpose
AI-PREFERENCES.md AI behavioral configuration (paste as custom instructions)
METHODOLOGY.md Full four-stage methodology
CLAUDE.md Project-specific Claude guidance
PAG-AGENT-ORCHESTRATION.md PAG version for agentic/CLI workflows
PAG-COLLABORATION.md PAG version for collaborative AI sessions

Persona system (5 personas + framework)

File Purpose
persona/JSON/CORE-PERSONA-FRAMEWORK.json Base framework — upload to AI session
persona/JSON/persona_plugins/GUIDE-PERSONA.json Methodology enforcement specialist (prevents vibe coding)
persona/JSON/persona_plugins/TECDOC-PERSONA.json Technical documentation specialist
persona/JSON/persona_plugins/R&D-PERSONA.json Research scientist with absolute code quality standards
persona/JSON/persona_plugins/MURMATE-PERSONA.json Visual systems specialist
persona/JSON/CREATE-PERSONA-PLUGIN.json Template for creating project-specific personas

Multi-format instruction variants

The same methodology in three formats:

  • prompt_formats/software_development/XML/METHODOLOGY.XML — For machine parsing
  • prompt_formats/software_development/XML/AI-PREFERENCES.XML — XML custom instructions
  • prompt_formats/software_development/JSON/ — JSON variants
  • prompt_formats/software_development/markdown/ — Markdown variants
  • pag_templates/ — PAG template files

Scripts

File Purpose
scripts/project_extract.py Generates structured codebase snapshot for sharing with AI sessions

Example project structures

File Project
example_project_structures/DISCORDJS_TEMPLATE_PROJECT.md Discord bot (46 files, all ≤ 150 lines)
example_project_structures/PHICODE_RUNTIME_PROJECT.md Programming language runtime (70+ modules)
example_project_structures/PHIPIPE_PROJECT.md CI/CD regression detection (Go)

Commands / Skills / Hooks

None. This is a methodology-doc repository with no installable Claude Code primitives.

05

Prompts

Varietyz/Disciplined-AI-Software-Development — Prompts & Instructions

Instruction delivery formats

The methodology ships every instruction in multiple formats simultaneously:

Format File Best for
Markdown AI-PREFERENCES.md, METHODOLOGY.md Web browser AI (ChatGPT, Claude web, Gemini)
XML AI-PREFERENCES.XML, METHODOLOGY.XML Machine-parseable; CLI agents (Claude Code, Cursor)
JSON prompt_formats/software_development/JSON/ Structured API payloads
PAG Inline within XML/Markdown Validation gates, constraint enforcement

AI-PREFERENCES.md / AI-PREFERENCES.XML — custom instructions

Pasted as custom instructions before any session. Establishes behavioral constraints:

  • File size limit: ≤ 150 lines (≤ 250 for web components)
  • Separation of concerns: each module must have single responsibility
  • Decision processing: focus on one objective at a time
  • Context window management: small, bounded problems only

The XML version is designed for machine parsing — it wraps the same content in schema-structured tags for predictable extraction by CLI agents.

METHODOLOGY.XML — structured methodology prompt

Delivered during Stage 2 (Collaborative Planning). Contains the four-stage methodology in XML schema form. Purpose: reduce interpretive ambiguity by removing prose from constraint definitions.

Example constraint block structure:

<constraint id="file_size_limit">
  <rule type="ALWAYS">Split files exceeding 150 lines INTO separate modules</rule>
  <rule type="NEVER">Create monolithic files</rule>
  <validation>VALIDATE module HAS single_responsibility</validation>
</constraint>

PAG (Pattern Abstract Grammar)

PAG is the methodology's proprietary instruction syntax. Keywords:

Keyword Function
ALWAYS Mandatory positive behavior
NEVER Mandatory negative constraint
VALIDATE Assertion that must pass before proceeding
READ Information retrieval instruction
WRITE Output generation instruction
SET Variable assignment
FOR EACH Iteration construct
END FOR Loop termination
INTO Decomposition directive
HAS Property assertion

Full PAG example from METHODOLOGY.md:

CONSTRAINT file_size_limit:
    SET max_lines = 150
    ALWAYS: Split files exceeding max_lines INTO separate_modules
    NEVER: Create monolithic files

CONSTRAINT separation_of_concerns:
    FOR EACH module IN codebase:
        VALIDATE module HAS single_responsibility
        VALIDATE module HAS clear_interfaces
    END FOR

PAG for CLI agents (PAG-AGENT-ORCHESTRATION.md)

A version of the PAG methodology adapted for agentic/CLI workflows with tool access. The key difference from PAG-COLLABORATION.md:

  • PAG-AGENT-ORCHESTRATION.md: designed for Claude Code, Cursor, Windsurf (agents that can read/write files directly)
  • PAG-COLLABORATION.md: designed for collaborative web browser sessions (ChatGPT, Claude web)

The distinction reflects the methodology's multi-tool philosophy: same constraints, different delivery mechanisms.

Persona prompts

Five persona files, each a JSON object. Upload to session alongside AI-PREFERENCES and METHODOLOGY:

CORE-PERSONA-FRAMEWORK.json

Base framework. Loaded first. Establishes:

  • Response style constraints
  • Behavioral consistency enforcement
  • Session governance rules

GUIDE-PERSONA.json

Methodology enforcement specialist. Prevents "vibe coding" — AI writing broad, unfocused implementations instead of bounded, single-responsibility modules. Active during Stage 3 (Implementation).

TECDOC-PERSONA.json

Technical documentation specialist. Ensures implementation is documented as it is written, not retroactively.

R&D-PERSONA.json

Research scientist with absolute code quality standards. Active during Stage 4 (Data-Driven Iteration). Focuses on benchmark analysis and quality metrics.

MURMATE-PERSONA.json

Visual systems specialist. Active for UI/UX-related components.

CREATE-PERSONA-PLUGIN.json

Template for creating project-specific personas. Not a persona itself — a schema definition for extending the base framework.

Prompt delivery for web browser vs CLI

The methodology explicitly distinguishes two delivery contexts:

Web browser (ChatGPT, Claude web, Gemini):

  • Paste AI-PREFERENCES.md as custom instructions
  • Upload CORE-PERSONA-FRAMEWORK.json + specific persona at session start
  • Share METHODOLOGY.md when planning
  • Use PAG-COLLABORATION.md for instruction syntax

CLI agents (Claude Code, Cursor, Windsurf):

  • CLAUDE.md at project root with behavioral constraints
  • METHODOLOGY.XML as machine-parseable input
  • AI-PREFERENCES.XML as system-level constraints
  • Use PAG-AGENT-ORCHESTRATION.md for instruction syntax

Context recovery prompt

scripts/project_extract.py generates a snapshot file (THE_PROJECT.md by default) formatted for sharing with AI sessions. The generated file includes:

  • Structured module list with file paths
  • Each module's content (up to configurable limits)
  • Dependency graph (if INCLUDE_DEPS=True)

This is shared at the start of each new session to restore context without manually re-pasting code.

09

Uniqueness

Varietyz/Disciplined-AI-Software-Development — Uniqueness

The most distinctive feature: PAG (Pattern Abstract Grammar)

No other framework in the corpus uses a custom instruction syntax. PAG provides:

  1. Formal semantics for AI instructionsALWAYS, NEVER, VALIDATE, FOR EACH keywords that reduce natural-language ambiguity
  2. Inline validation gates — constraints are expressed as assertions the AI must satisfy, not guidelines
  3. Machine-parseable form — PAG can be compiled into XML for CLI agents or used as prose for web browser AI

The closest analog in the corpus is openspec's YAML-first spec format, but PAG operates at the instruction level (telling the AI how to behave), not the artifact level (describing what to build).

Dual-format architecture (Markdown + PAG/XML simultaneously)

Every instruction exists in two equivalent forms:

  • Natural language Markdown for web browser AI
  • PAG/XML for CLI agents

This is architecturally unusual — most frameworks pick one format and target one tool class. Disciplined-AI explicitly designs for format-switching across tool types without changing the underlying constraint set.

CC BY-SA 4.0 license — the only attribution-required framework

Disciplined-AI is the only framework in this batch (and likely in the wider corpus) with a ShareAlike license. Any project that incorporates this methodology must release its own documentation under the same terms. This is a deliberate political choice by the author, not an oversight.

Phase 0 as a hard prerequisite

The "Phase 0 mandatory before any feature logic" rule is unusual in its absolutism:

Before ANY application code, you must have: benchmarking infrastructure + CI/CD + test suite + core architecture

Most methodologies suggest this order; Disciplined-AI treats Phase 0 as a gate. The AI is explicitly instructed not to write feature code until benchmarks can measure it.

Persona-as-behavioral-constrainer (not role driver)

The persona system differs from BMAD-METHOD's persona system in purpose:

Framework Persona purpose
BMAD-METHOD Role-based task driver (Architect writes architecture, Dev writes code)
Disciplined-AI Behavioral constrainer (Guide prevents vibe coding, R&D enforces quality standards)

BMAD personas tell the AI what work to do. Disciplined-AI personas tell the AI how to behave while doing any work.

Multi-tool first design

Disciplined-AI is the only methodology in this batch that explicitly designs for web browser AI sessions AND CLI agents simultaneously. The PAG/Markdown dual-format exists entirely to serve this goal.

Other frameworks are CLI-first with browser compatibility as an afterthought (or not considered at all).

Closest seed comparison

Closest: BMAD-METHOD (Archetype 1 — skills/persona behavioral framework)

Similarities:

  • Persona system as the primary consistency mechanism
  • Stage-based workflow (both have ~4 stages)
  • Strong emphasis on structured instructions

Key differences from BMAD-METHOD:

  • Disciplined-AI targets web browser AI sessions; BMAD targets Claude Code
  • Disciplined-AI personas are behavioral constrainers; BMAD personas are role drivers
  • Disciplined-AI has no installable primitives (no commands, skills, hooks); BMAD has all three
  • PAG is unique to Disciplined-AI — BMAD uses natural language instructions
  • Disciplined-AI's attribution-required license vs BMAD's permissive license

Also similar to superpowers (Archetype 1 — no CLI, behavior-by-instruction), but superpowers ships 24 skills as Claude Code primitives. Disciplined-AI has zero primitives and targets non-CLI tools equally.

What it uniquely solves

The methodology is the most comprehensive answer in this batch to the question: "How do I make a web browser AI (ChatGPT, Claude web) produce consistent, architecturally sound code over multiple sessions?" Most frameworks assume CLI agents with tool access. Disciplined-AI works with chat-only AI.

04

Workflow

Varietyz/Disciplined-AI-Software-Development — Workflow

Stage overview

The methodology enforces a four-stage sequence that must be followed in order. Stages are not phases in a CI/CD pipeline — they are context-loading and instruction-delivery patterns for AI sessions.

Stage 1: AI Behavioral Configuration
         ↓
Stage 2: Collaborative Planning
         ↓
Stage 3: Systematic Implementation
         ↓
Stage 4: Data-Driven Iteration

Stage 1 — AI Behavioral Configuration

Before any coding conversation begins, the AI tool is primed with two artifacts:

  1. AI-PREFERENCES.md / AI-PREFERENCES.XML — pasted as custom instructions (ChatGPT), system prompt (Claude), or equivalent. Establishes behavioral constraints: file size limits, separation of concerns, single-responsibility rule.

  2. A persona — one of GUIDE-PERSONA.json, TECDOC-PERSONA.json, R&D-PERSONA.json, MURMATE-PERSONA.json, uploaded to the session. Prevents behavioral drift across long sessions.

The CORE-PERSONA-FRAMEWORK.json base is loaded first; then a plugin persona extends it.

Gate: The AI must acknowledge the constraints before proceeding. Behavioral configuration is a prerequisite, not optional context.

Stage 2 — Collaborative Planning

METHODOLOGY.md / METHODOLOGY.XML is shared with the AI. The AI and developer jointly produce:

  • Architectural blueprint (module map, dependency graph)
  • Component boundaries (each module must be a single responsibility, ≤ 150 lines)
  • Data model (defined before any implementation)
  • Testing strategy (test infrastructure before application logic)
  • Performance benchmarks (targets set before writing code)

Phase 0 (mandatory pre-implementation)

Before any feature logic, Phase 0 must be completed:

Phase 0 checklist:
  □ Benchmarking infrastructure (performance baselines)
  □ CI/CD pipeline
  □ Core architecture modules
  □ Test suite scaffolding
  □ Data model finalized

The rationale: "Planning thoroughly upfront typically prevents days of fixing architectural issues later."

Stage 3 — Systematic Implementation

The developer implements one component per AI interaction. Each interaction is bounded:

  • Single component — one file, one responsibility
  • File size ≤ 150 lines (≤ 250 for web components)
  • Validation before proceeding — AI confirms constraints satisfied before moving to the next component

PAG constraint enforcement format:

CONSTRAINT file_size_limit:
    SET max_lines = 150
    ALWAYS: Split files exceeding max_lines INTO separate_modules
    NEVER: Create monolithic files

The GUIDE-PERSONA is active during this stage to enforce the 150-line limit and prevent "vibe coding" — writing broad, unfocused implementations.

Stage 4 — Data-Driven Iteration

After implementation, the developer returns to the benchmarking infrastructure created in Phase 0 and measures against the baseline. Iteration is driven by data, not intuition.

The R&D-PERSONA is appropriate for this stage — it brings "absolute code quality standards" and a research-scientist perspective to analyzing benchmark results.

Codebase snapshot workflow

Between sessions, scripts/project_extract.py generates a structured snapshot:

python scripts/project_extract.py
  → THE_PROJECT.md  (single-file output, SEPARATE_FILES=False)
  → OR: separate per-module files (SEPARATE_FILES=True)

This snapshot is shared with the AI at the beginning of the next session to restore context without manually re-reading files.

Dual-format PAG usage

PAG instructions can replace natural-language instructions for precision:

Natural language PAG equivalent
"Keep files small" ALWAYS: Keep files under 150 lines
"Don't repeat yourself" NEVER: Duplicate implementation logic
"Check each module" FOR EACH module: VALIDATE single_responsibility

PAG is specifically noted as "particularly effective when you need explicit validation gates and constraint enforcement."

Session discipline

The methodology addresses AI behavioral degradation in long sessions:

  • Start of session: load persona (prevents drift from a clean behavioral baseline)
  • During session: AI operates under PAG constraints (reduces interpretive ambiguity)
  • End of session: snapshot via project_extract.py (preserves context for next session)
  • New session: reload persona + snapshot (resets behavioral baseline)

There are no automated hooks or scripts enforcing these — all discipline is manual and convention-based.

06

Memory Context

Varietyz/Disciplined-AI-Software-Development — Memory & Context

Memory model: file-based snapshot

There is no persistent memory system, database, or automated state management. Memory is entirely manual and file-based.

The only memory mechanism is scripts/project_extract.py — a snapshot generator that produces a structured text file representing the entire codebase at a point in time.

project_extract.py behavior

# Key configuration flags (from source analysis):
SEPARATE_FILES = False   # True → per-module files; False → single THE_PROJECT.md
# Output: THE_PROJECT.md (default) or structured directory of module files

The script walks the project directory, reads each source file, and compiles them into a structured snapshot. The snapshot is then pasted or uploaded to a new AI session.

What the snapshot contains:

  • Project directory structure
  • Each module's full source (or truncated if size limit configured)
  • Metadata (file paths, line counts)

What it does not contain:

  • Conversation history
  • AI decisions or rationale from previous sessions
  • Specification documents (those are managed separately)

Context strategy: persona as behavioral memory

The personas serve as a form of behavioral memory — not project state memory, but AI behavior consistency:

  • Without persona reload: AI may "drift" in long sessions — gradually producing inconsistent code style, ignoring constraints, or reverting to default behaviors
  • With persona reload at session start: AI behavioral constraints are restored from a clean baseline

This is described in the methodology as a key problem that the persona system solves: "behavioral pattern degradation" across extended AI sessions.

Cross-session handoff protocol

No automated mechanism. The developer manually:

  1. Runs project_extract.py before ending a session
  2. Saves the generated snapshot
  3. At the next session start:
    • Uploads CORE-PERSONA-FRAMEWORK.json + active persona
    • Shares AI-PREFERENCES.md as custom instructions
    • Uploads THE_PROJECT.md snapshot
    • References METHODOLOGY.md for planning context

This is a convention, not an enforced workflow. There are no hooks, no CLAUDE.md session-start commands, no registry tracking.

Context window management philosophy

The methodology's primary context-management technique is file size constraints, not memory tooling:

"Small files and bounded problems prevent the AI from juggling multiple concerns simultaneously."

By enforcing ≤ 150 lines per module:

  • Each AI interaction stays bounded to a single file's context
  • No module requires the AI to hold multiple large files simultaneously
  • The codebase remains "shareable" — THE_PROJECT.md stays small enough to paste

The 150-line limit is described as both an architectural constraint and a context window optimization.

FAQ file (questions_answers/)

The questions_answers/ directory contains FAQ content. This is documentation for the developer, not input to AI sessions — it answers common questions about applying the methodology, but is not loaded into AI context.

No automated context compaction

Unlike spec-driver (which has a PostToolUse hook for artifact tracking), the methodology has no automated context compaction, no drift detection hooks, and no session state files. All context management is manual.

Scope of memory

Concern Mechanism Automated?
Project state THE_PROJECT.md snapshot No (manual script run)
AI behavioral constraints AI-PREFERENCES.md reload No (manual paste)
AI persona consistency Persona JSON reload No (manual upload)
Planning decisions METHODOLOGY.md reference No (manual share)
Session history None No
Spec-to-code tracking None No
07

Orchestration

Varietyz/Disciplined-AI-Software-Development — Orchestration

Orchestration model: none

This is a single-AI, single-session methodology. There is no multi-agent orchestration, no parallel subagent spawning, no pipeline of specialized AI workers.

The "orchestration" in this methodology is human-driven:

  • Developer decides which stage to operate in
  • Developer selects which persona to load
  • Developer decides which component to implement next
  • Developer runs the snapshot script between sessions

Persona system as role-based coordination

The closest analog to orchestration is the persona system — swapping which persona is active for different work types:

Work type Active persona
Methodology enforcement / implementation GUIDE-PERSONA
Writing technical documentation TECDOC-PERSONA
Benchmarking and quality analysis R&D-PERSONA
UI/UX component work MURMATE-PERSONA

This is sequential role assignment, not concurrent agent spawning. One persona is active at a time. The developer manually switches by uploading a different persona JSON.

PAG-AGENT-ORCHESTRATION.md

For CLI agents (Claude Code, Cursor, Windsurf), the methodology provides PAG-AGENT-ORCHESTRATION.md — a PAG-syntax version of the methodology adapted for agentic tool use.

Key difference from PAG-COLLABORATION.md: assumes the AI has file read/write access rather than requiring the developer to paste content. The constraints are the same; the delivery mechanism differs.

This document does not define multi-agent pipelines — it defines constraints for a single CLI agent session.

No spawning mechanism

There is no:

  • Claude Code claude-task-tool usage
  • Subagent definition files
  • Parallel execution tracks
  • Agent registry or coordination protocol

The methodology is designed to work with any AI tool as a single session, not to build infrastructure requiring specific AI agent capabilities.

Decision processing philosophy

The methodology's position on multi-step AI tasks:

"AI handles 'Can you do A?' more reliably than 'Can you do A, B, C, D, E, F, G, H?' — Decision Processing: AI handles focused objectives."

This is an anti-orchestration philosophy: rather than asking AI to manage complex multi-step work, the developer decomposes all work into single-objective interactions before any AI session begins. The decomposition happens in Stage 2 (Collaborative Planning), not at runtime.

Validation gates

Though not implemented as automated hooks, the methodology defines validation checkpoints in PAG:

CONSTRAINT separation_of_concerns:
    FOR EACH module IN codebase:
        VALIDATE module HAS single_responsibility
        VALIDATE module HAS clear_interfaces
    END FOR

These are instructions to the AI, not automated checks. The AI is expected to self-validate against constraints before producing output.

Execution mode

Interactive loop. Developer interacts with AI on one component per session turn, validates output against PAG constraints, then proceeds to the next component. No batch processing, no background agents.

Cross-tool portability

The methodology's multi-format approach (Markdown + XML + JSON + PAG) is explicitly designed to work across:

  • Web browser AI tools (ChatGPT, Claude web, Gemini)
  • CLI agents (Claude Code, Cursor, Windsurf)

The same four-stage methodology is portable across all — only the instruction delivery format changes.

08

Ui Cli Surface

Varietyz/Disciplined-AI-Software-Development — UI & CLI Surface

No dedicated CLI or UI

Disciplined-AI-Software-Development has no CLI binary, no web dashboard, no TUI, and no installable tool. It is a methodology document collection.

The only executable component is a Python utility script.

scripts/project_extract.py

Purpose: Generate a structured codebase snapshot for sharing with AI sessions.

Usage:

python scripts/project_extract.py

Configuration (edit variables at top of script):

  • SEPARATE_FILES = False — output single THE_PROJECT.md or per-module files
  • Other configuration inferred from script source (directory exclusions, file size limits)

Output: THE_PROJECT.md — a structured text file containing the project's full source, formatted for pasting or uploading to AI chat sessions.

This is the only developer-facing tooling in the repository.

Installation surface

Method Command
Direct clone git clone https://github.com/Varietyz/Disciplined-AI-Software-Development
Per-project copy Copy AI-PREFERENCES.md, METHODOLOGY.md, CLAUDE.md into project
Web browser AI Paste AI-PREFERENCES.md as custom instructions; upload persona JSON
CLI agent Place CLAUDE.md in project root; reference PAG-AGENT-ORCHESTRATION.md

The README states "Copy claude-setup/ into your project" but no such directory exists. The actual methodology files live at the repository root.

Claude Code surface

For Claude Code specifically, the methodology provides:

  • CLAUDE.md — project-specific guidance at project root
  • PAG-AGENT-ORCHESTRATION.md — PAG-syntax constraints for agentic file-reading sessions
  • AI-PREFERENCES.XML — machine-parseable custom instructions

No commands, no skills, no hooks. Claude Code integration is documentation-only.

Mermaid diagrams

mermaid_svg/ directory contains architecture diagrams. These are SVG files generated from Mermaid source — visual documentation of the methodology, not interactive tooling.

PAG templates

pag_templates/ directory contains template files for writing PAG instructions. These are scaffolding documents developers fill in when applying the methodology to a new project — not executable code.

Target environment

Dimension Value
Dedicated CLI No
Web UI No
TUI No
Python version 3.x (for project_extract.py)
Platform Any (methodology is platform-agnostic)
Primary delivery AI chat session (browser or CLI)

Comparison note

Unlike spec-driver (which ships a dedicated spec-driver CLI with 8 subcommands and a live TUI), or specorator (which ships a Claude plugin with 18 commands), Disciplined-AI is entirely tooling-free. All interaction is through AI chat sessions directly, with methodology documents as the only interface.

Related frameworks

same archetype · same primary tool · same memory type

Context-Engineering Handbook ★ 9.0k

Provides a first-principles, research-grounded vocabulary and learning path for context engineering — the discipline of designing…

walkinglabs/learn-harness-engineering ★ 6.6k

Teach harness engineering from first principles (12 lectures + 6 projects) and provide a scaffolding skill (harness-creator) that…

Awesome Harness Engineering (walkinglabs) ★ 2.7k

Curate the authoritative reference list of articles, benchmarks, and tools for harness engineering — the practice of shaping the…

cline-memory-bank (nickbaumann98) ★ 581

Custom instructions + 6-file hierarchical Markdown memory bank so Cline maintains full project context across sessions, with a…

FPF (First Principles Framework) ★ 372

Provides a formal pattern language for making reasoning explicit, traceable, and publishable in mixed human/AI engineering work —…

nexu-io/harness-engineering-guide ★ 134

Provide a practical, code-first reference guide to harness engineering — from first principles to production patterns —…