Giting.
낮의 Giting

홈 · AI 에이전트 · AGENTS.md/CLAUDE.md · 기획→구현 워크플로우 · 마크다운 규약

ai-intent-driven-development 대표 이미지 bac6a5a · 마지막 커밋 2026-01-12 · shallow clone 기준
분석 리포트실측 정보적용점원문 README

정체·구조

AI 코딩 에이전트에게 "코드 한 줄 쓰기 전에 Intent 문서부터 쓰라"고 지시하는 마크다운 규약 모음이다. 핵심 산출물은 저장소 루트에 놓이는 가이드 파일들(AGENTS.md, INTENT_SPECIFICATION.md, INTENT_EXAMPLE.md, PLANNING.md, DEVELOPMENT_WORKFLOW.md)과, 이들을 한 에이전트 파일로 합쳐 주는 bash 설치 스크립트 하나다.

실측으로 보면 규모가 작고 정체 상태다. 전체 24 파일, 텍스트 3,276줄이고 그중 마크다운이 약 2,230줄, bats 테스트가 731줄, 설치 스크립트가 258줄이다. 커밋 41회에 저자는 1명(Exadra37), 릴리스 태그는 0개, 최근 90일 커밋은 0회이며 마지막 커밋이 2026-01-12, 마지막 push가 2026-01-27이다. 스타 40, 포크 4, 열린 이슈 1. LICENSE 파일이 없고 SPDX도 검출되지 않는다. 문서 성격의 repo라 커밋·테스트 수가 성숙도를 뜻하지는 않지만, 단일 저자와 90일 무커밋은 유지보수 신호로 약하게 읽어야 한다.

핵심 개념·구조

상시 가이드 층 (AGENTS.md가 진입점). AGENTS.md가 나머지 문서를 참조하고, 에이전트에게 "STAFF 엔지니어로 계획하고 SENIOR 엔지니어로 구현하라", "추측 금지, 문서·공식 문서·사용자 순으로 확인하라", "TDD 레드-그린-리팩터 우선"을 지시한다. 여기까지는 사실상 잘 쓰인 CLAUDE.md/AGENTS.md 한 벌이다.

Intent 산출물 층 (per-task). Intent는 저장소 .intents/ 폴더에 사는 자기완결 마크다운 파일 하나다. 형태는,

  • 제목 H1: <유형>(도메인-리소스): intent
  • 필수 H2: WHY(의도·동기), WHAT(요구, 주로 Gherkin Given/When/Then), HOW(에이전트가 따를 태스크·서브태스크 체크박스)
  • 선택 H2: TARGET AUDIENCE, CONSTRAINTS, DESIGN DECISIONS, ALTERNATIVES, ARCHITECTURE, IMPLEMENTATION 등

Intent 루프 대응: Intent(WHY) → Spec(WHAT, Gherkin) → Plan(HOW, 체크박스) → Implementation(태스크 하나씩, 사용자 승인 게이트) → Verification(TDD + mix precommit + 규정 커밋 포맷). 진행 상태는 코드가 아니라 파일 위치로 추적한다. .intents/ 밑 todo·work-in-progress·completed 폴더로 옮기고, N.last_intent_created로 번호를 센다. 각 전이는 착수 전 반드시 git 커밋.

AGENTS.md/CLAUDE.md와의 관계가 핵심 위치다. INTENT.md는 AGENTS.md를 대체하지 않는다. AGENTS.md는 "Intent를 만들어 일하라"는 상시 규약이고, Intent 문서는 그 규약이 매 작업마다 낳는 산출물이다.

실제로 되는 것·안 되는 것

문서-only가 아니다. ai-intent-driven-development.sh가 from-scratch·add·copy 명령을 제공하고, 더러운 git 트리면 중단, git repo 아니면 기존 파일을 타임스탬프 백업한다. bats 731줄이 시나리오를 덮고 워크플로우 1개가 CI로 돈다. 다만 이 도구는 "마크다운 합쳐 배치"까지이고, Intent를 만들고 상태 폴더를 옮기는 실행은 전부 LLM 에이전트가 규약을 읽고 하는 몫이다. 그 지점부터는 규약(프롬프트)일 뿐 강제 실행 장치가 없다.

언어 지원은 언어 비의존 코어 + Elixir/Phoenix 전용 층으로 갈린다. 코어(Intent 규약·워크플로우·계획)는 스택 무관하지만 elixir/·elixir/phoenix/ 밑은 Phoenix 생성기 전제. 채택 신호는 약하다(스타 40·포크 4·단일 저자·90일 무커밋·태그 0).

우리 적용점

우리는 이미 워크스페이스 전체가 CLAUDE.md/AGENTS.md로 돌고, Drafting(PRD·명세·IA·플로우·council·지시서)과 Triforge 기획실이 사실상 intent→spec→plan 체인이다. 대응하면 IDD의 WHY≈Drafting PRD 배경, WHAT(Gherkin)≈명세·플로우, HOW(체크박스)≈지시서다. 차이가 흡수 포인트다.

  • 차이의 핵심: repo-상주 + 실행 결합. Drafting은 상류에서 기획을 넘기는 제품이고, IDD의 Intent는 같은 파일이 저장소 안에 살면서 코딩 에이전트가 제자리에서 체크박스를 갱신하고 git으로 진척을 추적한다. 우리 지시서가 세션 산출물로 끝나고 repo 밖에 남는 것과 대조된다. 흡수할 아이디어: 지시서를 repo 안 git 추적 1급 시민으로 두고, 착수 전 커밋하고, 상태 폴더로 진척 추적. Keeping이나 Drafting 익스포트 대상 포맷 후보.
  • 단일 파일 Intent 익스포트 모드. WHY·WHAT(Gherkin)·HOW(체크박스)를 한 마크다운에 응축한 형태는 코딩 에이전트에 바로 물리기 좋다. Drafting에 "한 파일 intent" 익스포트 옵션을 붙이면 다중 문서 체인을 유지하면서도 에이전트 실행용 단일 산출물을 뽑을 수 있다.
  • 명세↔검증 순서 강제. Gherkin 시나리오 순서와 TDD 태스크 순서를 일치시키는 규칙은, 우리 지시서의 검증 단계가 명세와 어긋나게 나열되는 걸 막는 체크로 참고.

가져오지 말 것

  • 마크다운/코드 자체. LICENSE 없음(SPDX 미검출). 라이선스 없는 저작물은 저작권자에게 전권이 있어 파일 복사가 법적으로 막힌 길이다. 개념만 참조, 표현은 새로 쓴다.
  • Elixir/Phoenix 전용 층. DOMAIN_RESOURCE_ACTION·Phoenix 생성기·mix precommit은 우리 스택 아님.
  • 과도한 절차 세리머니. 서브태스크마다 승인 대기, MUST/CRITICAL 남발은 우리 develop/PR 게이트와 중복·마찰만 키움.
  • 경쟁 루트 파일 신설. INTENT.md를 새 표준으로 세우는 것은 CLAUDE.md/AGENTS.md + Drafting로 이미 덮인 영역에 표면만 늘림. 규약 말고 산출물 포맷 아이디어만 흡수.

실측 정보

HEAD 커밋
bac6a5a · 마지막 커밋 2026-01-12 · shallow clone 기준
무엇
AI 코딩 에이전트에게 '코드 쓰기 전에 Intent 문서부터 쓰라'고 지시하는 마크다운 규약 모음. AGENTS.md·INTENT_SPECIFICATION.md·PLANNING.md 등 가이드 파일 + 한 에이전트 파일로 합쳐 주는 bash 설치 스크립트
규모 / 실측
24파일 · 3,276줄 · 마크다운 약 2,230 + bats 테스트 731 + 설치 스크립트 258 · CI 1 · 문서 성격 repo라 커밋·테스트 수가 성숙도를 뜻하진 않음
활발 / 유지
커밋 41 · 저자 1(Exadra37) · 릴리스 0태그 · 최근 90일 커밋 0 · 마지막 커밋 2026-01-12 · 사실상 정체
⚠️ 라이선스
LICENSE 파일 없음 · SPDX 미검출 → 마크다운·코드를 그대로 가져오면 법적으로 막힌다(개념 참조만 가능)
성격
AGENTS.md/CLAUDE.md의 대체가 아니라 그 위에서 intent→spec→plan 태스크 흐름을 얹는 규약

적용점

  • 이럴 때 유용에이전트에게 코드보다 Intent(WHY·WHAT·HOW)를 먼저 쓰게 하는 규약이 궁금할 때. INTENT.md 단일 문서 규약과 .intents/ 상태 폴더 지속성 프로토콜은 개념으로 배울 값이 있다.
  • 이럴 땐 부적합⚠️ 라이선스가 없어 마크다운·코드를 그대로 가져올 수 없다(법적 차단). 단일 저자·90일 무커밋으로 사실상 정체이고, 언어 비의존 코어 밖은 Elixir/Phoenix 전용이다.
  • 먼저 볼 것채택이 아니라 개념 참조 대상이다. 우리는 이미 CLAUDE.md/AGENTS.md + Drafting + Triforge 기획실로 intent→spec→plan 체인을 운영하므로, 여기서는 문서 규약의 발상만 본다.
◈ 참고용

◈ 참고. INTENT.md 단일 문서 규약과 .intents/ 상태 폴더 지속성 프로토콜은 개념으로 배울 값이 있으나, 라이선스가 없어 마크다운/코드를 그대로 가져올 수 없고(법적 차단), 단일 저자·90일 무커밋으로 사실상 정체 상태이며, 언어 비의존 코어 밖은 Elixir/Phoenix 전용이다. 우리는 이미 CLAUDE.md/AGENTS.md + Drafting + Triforge 기획실로 intent→spec→plan 체인을 운영하므로 채택 대상이 아니라 개념 참조 대상이다.

원문 README

아래는 Exadra37/ai-intent-driven-development 저장소의 README 원문입니다(GitHub 렌더, 수집 시점 기준). 저작권은 원 프로젝트에 있으며 원 저장소의 라이선스를 따릅니다. GitHub에서 보기

README 전문 펼치기

AI Intent Driven Development (IDD)

Github Sponsor: https://github.com/sponsors/Exadra37

The main goal of this project is to provide AI Intent Driven Development (IDD) guidance for AI Coding Agents, AI Coding Assistants, and LLMs.

An Intent is a self-contained document that describes a user request. It is composed of three main sections: WHY (the motivation), WHAT (the requirements, often in Gherkin language), and HOW (a detailed, step-by-step implementation plan defined with tasks). This approach ensures clarity and alignment before any code is written.

This project delivers this guidance as a collection of markdown files that instruct AI agents to follow specific guidelines for planning and creating Intents from user requests, with additional instructions on architecture, development workflow, code guidelines and more. It supports both language-agnostic and language-specific guidance. Currently, the project focuses on Elixir and Phoenix, with plans to support other BEAM languages and frameworks in the near future. Other programming languages and frameworks will also be supported.

TOC

Overview

These project guidelines are split into several files that can be combined into a single agent file when installing.

Current individual markdown files for guidelines:

The project defines a Domain Resource Action architecture pattern. This pattern organizes the business logic into a clear structure of Domains, Resources, and Actions. Each Action is a self-contained module that handles a single responsibility, making the code easier to understand, reason about, test, maintain, add features and fix bugs. This architecture is designed to work with Phoenix code generators and provides a clear path for refactoring generated code into a more robust structure. This architecture is easily applied to any programming language and framework, and will do so in the future. While strongly recommended to be used, you can drop it, by removing it from the agent file or deleting the ARCHITECTURE.md file, depending how you installed the guidelines.

Back to TOC

How to Install

For all operating systems we recommend you to clone this repo to the usual place where installed applications go. For example in Linux this repo could be installed at ~/.local/share/ai-intent-driven-development.

Linux

We recommend you to perform a global installation, but we also provide instructions for project specific installation.

On your terminal execute:

git clone https://github.com/Exadra37/ai-intent-driven-development.git ~/.local/share/ai-intent-driven-development

Go inside the installation directory:

cd ~/.local/share/ai-intent-driven-development

Add the bin folder to your path permanently in ~/.bashrc, ~/.zshrc or the file for your shell of preference.

For ~/.bashrc:

echo 'export AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR=~/.local/share/ai-intent-driven-development' >> ~/.bashrc
echo 'export PATH=$PATH:${AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR}/bin' >> ~/.bashrc
echo 'alias aidd="${AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR}/bin/ai-intent-driven-development.sh"' >> ~/.zshrc

For ~/.zshrc:

echo 'export AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR=~/.local/share/ai-intent-driven-development' >> ~/.zshrc
echo 'export PATH=$PATH:${AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR}/bin' >> ~/.zshrc
echo 'alias aidd="${AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR}/bin/ai-intent-driven-development.sh"' >> ~/.zshrc

IMPORTANT: The environment variable AI_INTENT_DRIVEN_DEVELOPMENT_INSTALL_DIR is required for the script to work properly.

Now, you need to reload your shell file:

source ~/.bashrc

NOTE: Replace ~/.bashrc with the file for your shell, for example ~/.zshrc.

Check help with:

ai-intent-driven-development.sh help

Or with:

aidd help

Project Specific Installation

On your terminal execute:

mkdir .local
git clone https://github.com/Exadra37/ai-intent-driven-development.git .local/ai-intent-driven-development

If you don't have a .gitignore_global yet, you can create one with:

echo ".local/" >> ~/.gitignore_global
git config --global core.excludesFile '~/.gitignore_global'

Next, add ./bin/ai-intent-driven-development.sh to your path:

export PATH="$PATH:$(pwd)/.local/ai-intent-driven-development/bin"

Or add an alias for your current shell if you prefer a shorter name:

alias aidd=".local/ai-intent-driven-development/bin/ai-intent-driven-development.sh"

NOTE: Both are only valid for your current shell session.

Check help with:

ai-intent-driven-development.sh help

Or with:

aidd help

Back to TOC

How to Setup

Follow the steps below to use these project guidelines for AI Coding Agents, AI Coding Assistants, LLMs, or whatever name is being used nowadays or you are more familiar with.

New Agent File From Scratch

For language agnostic guidelines to the default AGENTS.md file:

ai-intent-driven-development.sh from-scratch

For language agnostic guidelines to a specific agents file:

ai-intent-driven-development.sh from-scratch CLAUDE.md

For Elixir guidelines to the default AGENTS.md file:

ai-intent-driven-development.sh from-scratch elixir

For Elixir guidelines to a specific agent file:

ai-intent-driven-development.sh from-scratch CLAUDE.md elixir

For Elixir and Phoenix guidelines to a specific agent file:

ai-intent-driven-development.sh from-scratch CLAUDE.md elixir phoenix

Add to Existing Agent File

For language agnostic guidelines to the default AGENTS.md file:

ai-intent-driven-development.sh add

For language agnostic guidelines to a specific agents file:

ai-intent-driven-development.sh add CLAUDE.md

For Elixir guidelines to the default AGENTS.md file:

ai-intent-driven-development.sh add elixir

For Elixir guidelines to a specific agent file:

ai-intent-driven-development.sh add CLAUDE.md elixir

For Elixir and Phoenix guidelines to a specific agent file:

ai-intent-driven-development.sh add CLAUDE.md elixir phoenix

Copy as Individual Markdown Files

For language agnostic guidelines:

ai-intent-driven-development.sh copy

For Elixir guidelines:

ai-intent-driven-development.sh copy elixir

For Elixir and Phoenix guidelines:

ai-intent-driven-development.sh copy elixir phoenix

Back to TOC

How to Use with AI Coding Agents

You MUST start a new session with your AI Coding agent, assistant, LLM when adding this collection of guidelines to your project to ensure the agent picks up the new AGENTS.md file or whatever one you used, like CLAUDE.md, GEMINI.md, and others.

Prompts

For the first time

To ensure that the AI is on the same page as you, we strongly recommend to execute the below prompts when starting a session or at least when you install these guidelines.

First, start by instructing the AI to read the Agents file:

Read the @AGENTS.md in full and also read in full all the documents it links to, and do the same for links included in any of these files.
Make sure you understand every bit on them, otherwise we will waste our time when working together, because we will not have the same understanding of whats in the documentation.

After the AI says it has read it, ensure it has understood everything:

Do you have questions about the documentation? Anything that's not clear to you? Don't make assumptions.

Next, ask it for a summary:

Can you summarize the documentation in a few points?

TIP: After running one of these prompts, especially for when it answers the second prompt, where it may be a lot of in the answer and/or asks for clarifications/confirmations in things that are already clearly/explicitly explained in the documents, and/or it misunderstands the documents it was asked to read and grasp, then it's better that you start another session, because it was a bad/false start. If you believe that any of the documents can be improved to avoid any of it, then open a discussion with the prompts and the answers with your proposed improvements to be discussed.

Planning an Intent to work on your project

To work on a new feature, fix, or whatever you want, then you need to prompt the AI Agent with some context about what you plan to work on, and the AI Agent should propose to you the creation of an Intent after discussing it with you.

For example:

I want to work on a feature to add support for a Newsletter, including user subscription and management without using a third-party provider, content creation with modern HTML templates, and sending it via email providers.
Before proposing the Intent with the tasks, ask questions, propose solutions, to be discussed to establish an implementation plan to be then translated into an Intent, that will explain WHY, WHAT and HOW (the tasks).

NOTE: If using Claude then you may want to use the planning mode for better results.

After you have an Intent, it should resemble this example.

Executing all Intent Tasks

Now that you have an Intent you simply point the AI Coding Agent at it and it will start working on each task on it, one at a time.

Start working on Intent 10.

or

Resume work on Intent 10.

Back to TOC

How to Contribute

Guidelines

Before contributing, please open a new discussion to propose your changes and ensure they align with the project's goals.

If you make changes to /bin then they need to come with tests for all scenarios.

Development

To contribute to this project, you first need to clone the repository:

git clone git@github.com:Exadra37/ai-intent-driven-development.git

Once you have cloned the repository, you need to initialize the submodules:

cd ai-intent-driven-development
git submodule update --init --recursive

Then follow the instructions to add the bash script of this project to the path for your operating system at How to Install.

Testing

This project uses Bats-Core for testing. Test files are located in the test/ directory.

To run the tests, first make sure you have initialized the submodules as described in the Development section. Then, execute the following command:

test/libs/bats-core/bin/bats test/ai-intent-driven-development.sh.bats

Back to TOC

Credits

This repo was inspired by bits and bobs from here and there on the web, with some sprinkles of my own.

Some of the more influential sources for my work:

  • Intent Steel Thread - Inspired on this concept for the WHY. WHAT, HOW, and Tasks, but condensed in one single document, the Intent.
  • Kevin Hoffman - The development workflow guidelines are inspired by the ones they use at Akka.
  • Phoenix Framework - The code guidelines for Elixir is a copy from the AGENTS.md file generated by mix phx.new.

Back to TOC

의견

판정에 대한 반론, 도입 경험, 정정 제보를 환영합니다. GitHub 계정으로 참여합니다.

이것도 재봤습니다

전체 리포트 →