규칙
dropstone에 대한 사용자 지정 지침을 설정합니다.
AGENTS.md 파일을 생성하여 dropstone에 사용자 지정 지침을 제공할 수 있습니다. 이는 Cursor의 규칙과 유사합니다. 이 파일에는 특정 프로젝트에 맞게 동작을 사용자 지정하기 위해 LLM의 컨텍스트에 포함될 지침이 담겨 있습니다.
초기화
새 AGENTS.md 파일을 만들려면 dropstone에서 /init 명령을 실행할 수 있습니다.
Tip
프로젝트의 AGENTS.md 파일을 Git에 커밋하여 팀의 나머지 구성원도 동일한 규칙을 사용할 수 있도록 하세요.
/init는 저장소의 중요한 파일을 스캔하고, 코드베이스가 답할 수 없는 경우 몇 가지 목표 지향적인 질문을 할 수 있으며, 간결한 프로젝트별 지침이 포함된 AGENTS.md를 생성하거나 업데이트합니다.
향후 에이전트 세션에서 가장 필요할 가능성이 높은 항목에 중점을 둡니다:
- 빌드, 린트, 테스트 명령
- 명령 순서와 중요할 때 집중된 검증 단계
- 파일 이름만으로는 명확하지 않은 아키텍처 및 저장소 구조
- 프로젝트별 규칙, 설정 관련 특이 사항, 운영상의 주의점
- Cursor 또는 Copilot 규칙과 같은 기존 지침 소스에 대한 참조
이미 AGENTS.md가 있는 경우 /init는 무작정 덮어쓰는 대신 해당 파일을 제자리에서 개선합니다.
예시
이 파일을 수동으로 생성할 수도 있습니다. 다음은 AGENTS.md 파일에 넣을 수 있는 몇 가지 예시입니다.
# SST v3 Monorepo 프로젝트
TypeScript 기반의 SST v3 모노레포 프로젝트입니다. 패키지 관리를 위해 bun workspaces를 사용합니다.
## 프로젝트 구조
- `packages/` - 모든 워크스페이스 패키지 포함 (functions, core, web 등)
- `infra/` - 서비스별로 분리된 인프라 정의 (storage.ts, api.ts, web.ts)
- `sst.config.ts` - 동적 임포트가 포함된 메인 SST 구성
## 코드 표준
- strict 모드가 활성화된 TypeScript 사용
- 공유 코드는 적절한 exports 구성과 함께 `packages/core/`에 배치
- 함수는 `packages/functions/`에 배치
- 인프라는 `infra/`의 논리적 파일로 분리
## 모노레포 규칙
- 워크스페이스 이름을 사용하여 공유 모듈 임포트: `@my-app/core/example`
여기에 프로젝트별 지침을 추가하고 있으며, 이는 팀 전체에서 공유됩니다.
유형
dropstone은 여러 위치에서 AGENTS.md 파일을 읽는 것도 지원합니다. 그리고 이는 각각 다른 목적을 제공합니다.
프로젝트
프로젝트별 규칙을 위해 프로젝트 루트에 AGENTS.md를 배치하세요. 이 규칙은 해당 디렉터리 또는 하위 디렉터리에서 작업할 때만 적용됩니다.
전역
~/.config/dropstone/AGENTS.md 파일에 전역 규칙을 둘 수도 있습니다. 이는 모든 dropstone 세션에 적용됩니다.
이 파일은 Git에 커밋되거나 팀과 공유되지 않으므로, LLM이 따라야 할 개인적인 규칙을 지정하는 데 사용하는 것을 권장합니다.
Claude Code 호환성
Claude Code에서 마이그레이션하는 사용자를 위해 Dropstone은 Claude Code의 파일 규칙을 대체 수단으로 읽습니다:
- 프로젝트 규칙: 프로젝트 디렉터리의
CLAUDE.md(AGENTS.md가 없는 경우 사용) - 전역 규칙:
~/.claude/CLAUDE.md(~/.config/dropstone/AGENTS.md가 없는 경우 사용) - 스킬:
~/.claude/skills/(자세한 내용은 스킬 참조)
Dropstone이 Claude Code 위치를 읽지 않도록 하려면 해당 파일을 제거하거나 이름을 바꾸세요 (또는 동일한 내용을 AGENTS.md에 커밋하여 프로젝트가 우선권을 갖도록 하세요).
우선순위
Dropstone이 시작되면 다음 순서로 규칙 파일을 찾습니다:
- 로컬 파일 - 현재 디렉터리에서 위로 이동하며 탐색 (
AGENTS.md,CLAUDE.md) - 전역 파일 -
~/.config/dropstone/AGENTS.md - Claude Code 파일 -
~/.claude/CLAUDE.md(위의 파일이 모두 없는 경우)
각 범주에서 첫 번째로 일치하는 파일이 사용됩니다. 예를 들어 AGENTS.md와 CLAUDE.md가 모두 있으면 AGENTS.md만 사용됩니다. 마찬가지로 ~/.config/dropstone/AGENTS.md가 ~/.claude/CLAUDE.md보다 우선합니다.
사용자 지정 지침
dropstone.json 또는 전역 ~/.config/dropstone/dropstone.json에서 사용자 지정 지침 파일을 지정할 수 있습니다. 이를 통해 기존 규칙을 AGENTS.md에 중복 작성하지 않고 재사용할 수 있습니다.
예시:
{
"$schema": "https://dropstone.io/schema/config.json",
"instructions": ["CONTRIBUTING.md", "docs/guidelines.md", ".cursor/rules/*.md"]
}
원격 URL을 사용하여 웹에서 지침을 로드할 수도 있습니다.
{
"$schema": "https://dropstone.io/schema/config.json",
"instructions": ["https://raw.githubusercontent.com/my-org/shared-rules/main/style.md"]
}
원격 지침은 5초의 타임아웃으로 가져옵니다.
모든 지침 파일은 AGENTS.md 파일과 결합됩니다.
외부 파일 참조
dropstone은 AGENTS.md의 파일 참조를 자동으로 구문 분석하지 않지만, 두 가지 방법으로 유사한 기능을 구현할 수 있습니다:
dropstone.json 사용
권장 방법은 dropstone.json의 instructions 필드를 사용하는 것입니다:
{
"$schema": "https://dropstone.io/schema/config.json",
"instructions": ["docs/development-standards.md", "test/testing-guidelines.md", "packages/*/AGENTS.md"]
}
AGENTS.md의 수동 지침
AGENTS.md에 명시적인 지침을 제공하여 dropstone이 외부 파일을 읽도록 가르칠 수 있습니다. 다음은 실용적인 예시입니다:
# TypeScript 프로젝트 규칙
## 외부 파일 로드
중요: 파일 참조(예: @rules/general.md)를 만나면 Read 도구를 사용하여 필요할 때 로드하세요. 해당 파일은 현재 진행 중인 특정 작업과 관련이 있습니다.
지침:
- 모든 참조를 미리 로드하지 마세요 - 실제 필요에 따라 지연 로딩을 사용하세요
- 로드된 경우 해당 내용을 기본값을 재정의하는 필수 지침으로 취급하세요
- 필요할 때 참조를 재귀적으로 따르세요
## 개발 지침
TypeScript 코드 스타일 및 모범 사례: @docs/typescript-guidelines.md
React 컴포넌트 아키텍처 및 훅 패턴: @docs/react-patterns.md
REST API 설계 및 오류 처리: @docs/api-standards.md
테스트 전략 및 커버리지 요구 사항: @test/testing-guidelines.md
## 일반 지침
모든 워크플로우와 관련이 있으므로 다음 파일을 즉시 읽으세요: @rules/general-guidelines.md.
이 접근 방식을 통해 다음을 수행할 수 있습니다:
- 모듈식으로 재사용 가능한 규칙 파일 생성
- 심볼릭 링크 또는 Git 서브모듈을 통해 프로젝트 간 규칙 공유
- 상세 지침을 참조하면서 AGENTS.md를 간결하게 유지
- 특정 작업에 필요할 때만 dropstone이 파일을 로드하도록 보장
Tip
모노레포 또는 공유 표준이 있는 프로젝트의 경우, 수동 지침보다 glob 패턴(예: packages/*/AGENTS.md)을 사용하는 dropstone.json이 더 유지 관리하기 쉽습니다.