Show HN: AgentRun - 에이전트를 워크플로우로 변환하는 DSL
요약
AgentRun은 기존에 실행 중인 AI 에이전트를 위한 워크플로우 정의 언어(DSL)입니다. 이 도구를 사용하면 반복적인 단계와 Jev를 이용한 집중적 의사결정을 포함하는 복잡한 워크플로우를 구축할 수 있습니다. 사용자 애플리케이션은 자체 도구, 모델 접근 권한, 예산 등을 유지하며 에이전트의 기능을 확장합니다.
핵심 포인트
- 에이전트를 위한 전용 워크플로우 언어(DSL) 제공
- Jev를 활용하여 복잡하고 집중적인 의사결정 구현 가능
- 도구 호출, 모델 접근 권한 등 애플리케이션 자원 관리 용이
agent.run()
Jev 기반의 워크플로우를 에이전트에 추가하세요.
AgentRun은 이미 실행 중인 에이전트를 위한 워크플로우 언어입니다. 반복 가능한 단계를 정의하고, Jev를 사용하여 집중적인 의사결정을 수행하며, 작업에 조사가 필요할 때 에이전트를 호출할 수 있습니다. 사용자의 애플리케이션은 자체 도구(tools), 모델 접근 권한, 권한(permissions), 그리고 예산(budgets)을 유지합니다.
Quickstart · Packages · Documentation · Examples · Pi extension · Agent instructions

아래의 지원(support) 예제는 스크립트화된 도구와 모델 응답을 사용하여 이 워크플로우를 따릅니다.
Quickstart
Node 22.19+ 및 npm이 필요합니다. 프로젝트에서 다음을 수행하세요:
npm install @parcha/agentrun-dsl@beta
npx agentrun demo
이 티켓 라우팅(ticket-routing) 데모는 스크립트화된 의사결정을 사용하며 API 키가 필요하지 않습니다. 다음으로, 자신의 앱에서 워크플로우를 실행하고 변경하는 방법을 확인하세요. 위에 표시된 지원 워크플로우를 실행하려면 아래의 체크아웃(checkout)을 사용하세요. 에이전트로 워크플로우를 구축하려면, Pi extension을 설치하세요.
지원 예제 실행하기
애니메이션에서 워크플로우를 실행하려면, 예제를 클론하고 빌드하세요:
git clone --branch main --single-branch https://github.com/Parcha-ai/agentrun.git
cd agentrun
# nvm 사용 시: nvm install && nvm use
...
이 명령어는 스크립트화된 도구, Jev 응답, 그리고 에이전트 응답을 사용하여 인터프리터를 실행합니다. API 키가 필요하지 않으며 고객에게 답장을 보내지 않습니다.
명령어는 각 케이스에 대한 보고서를 출력합니다:
| 요청 (Request) | 에이전트 호출 (Agent calls) | 의사결정 호출 (Decision calls) | 결과 (Result) |
|---|---|---|---|
| 비밀번호 재설정 (Reset a password) | 0 | 1 | 도움말 답변 반환 (Return the help answer) |
| ... |
npm run demo:support -- payment
npm run test:support
npm run demo:support -- unresolved를 시도하여 에스컬레이션(escalation)을 확인해 보세요. 이 명령어는 코드 2로 종료됩니다. 응답은 스크립트화되어 있어 프롬프트를 변경해도 바뀌지 않습니다.
Jev를 라이브로 연결하거나 에이전트에게 지침을 제공하세요 또는 코딩 에이전트에게 이 지침을 전달하세요.
하나만 사용하거나, 전부 사용하기
하나만 사용하기
각 패키지는 독립적으로 작동합니다. 필요한 것만 설치하세요.
| 패키지 | 기능 | 필요 조건 | 키가 없는 첫 번째 명령어 | 상태 |
|---|---|---|---|---|
@parcha/agentrun-dsl | 워크플로우 정의, 검증, 검사 및 실행 | Node 22.19 이상 | npx agentrun demo | 게시됨 (@beta) |
| ... |
보류된 패키지는 다른 패키지들과 함께 빌드되고 테스트되며 검증됩니다. 그리고 그 매니페스트에는 "private": true가 명시되어 있어, npm에서 설치되는 것이 아니라 압축된 tarball에서 설치됩니다.
전부 사용하기
하나의 프로그램이 패키지들을 통합하여 pi-durable 상에서 작업을 처음부터 끝까지 실행합니다: 즉, durable run(내구성 있는 실행), 복구 드라이버(recovery driver), 노드 러너(node runner), 브라우저 및 비전(vision)을 사용합니다. 이는 스크립트된 모델과 가짜 브라우저를 사용하며, 키가 필요 없고 기록과 인용하는 영수증을 출력합니다.
npm ci --ignore-scripts
npm run build
npm run demo:reference
examples/reference/에 작업(job)과 코드가 있습니다. 호스트가 제공하는 것은 패키지들이 호스트에게 요청하는 7가지 함수, 설치 순서 및 그 이유, 그리고 예제가 아직 수행하지 못하는 작업을 나열합니다.
워크플로우의 모습
지원 워크플로우는 답변 텍스트와 출처 참조(source reference)를 필요로 합니다. Jev는 또한 최소 0.8 이상의 신뢰도로 '예'라고 답변해야 합니다. 그렇지 않은 경우, 워크플로우는 한 번의 에이전트 시도를 허용하고 다시 확인합니다. 만약 답변이 여전히 이러한 검사를 통과하지 못하면, 검토를 위해 에스컬레이션(escalates)됩니다. 사용자는 자신의 작업에 대한 기준(criteria)과 임계값(thresholds)을 선택할 수 있습니다.
다음은 해당 워크플로우의 검색 및 결정 노드들입니다:
{
node: 'call', label: 'find-answer', via: 'tool',
tool: 'help.search', args: { request: '{request}' },
...
‘Candidate’와 ‘Fit’은 워크플로우 내의 스키마를 지칭합니다. ‘Fit’은 질문과 그에 대한 ‘yes’, ‘no’, ‘uncertain’ 기준을 정의합니다. 코드는 결정(decision)과 그 신뢰도(confidence)를 읽어 다음 단계를 선택합니다. 전체 정의(agent 및 review path 포함)를 참고하세요.
JSON으로 워크플로우를 작성하거나 TypeScript 빌더와 Zod 컨트랙트를 사용할 수 있습니다. 이 빌더는 입력 및 출력 타입을 추론합니다. 인터프리터는 런타임에 중간 상태 경로(intermediate state paths)를 검사합니다. 워크플로우는 다른 워크플로우를 호출하고, 작업을 병렬로 매핑하며, 유한 루프(bounded loops)를 실행할 수 있습니다.
애플리케이션 연결하기
npm install @parcha/agentrun-dsl@beta @parcha/agentrun-jev@beta 명령어로 코어와 Jev 어댑터를 애플리케이션에 설치하세요. 그런 다음:
- 어댑터 공급(Supply adapters).
runEffect를 통해 도구를 연결하고, 기존 에이전트를runNode를 통해, 그리고 Jev 결정을createJevRunner()로runJudge로서 연결합니다. - 워크플로우 정의 및 테스트. 스키마, 단계, 임계값(thresholds), 검토 경로(review path)를 작성하세요. 더미 데이터(fixtures)부터 시작하여, 작업에서 레이블링된 케이스에 대한 실제 결정을 평가합니다.
- 에이전트에 워크플로우 도구 제공.
runWorkflow를 호출하는 함수를 등록하여 에이전트의 도구 중 하나로 만드세요. 워크플로우의 출력, 에스컬레이션(escalation), 오류 처리를 처리합니다.
지원 통합 가이드에는 설정 템플릿과 실시간 명령어가 있습니다. 라이브 Jev 호출에는 TypeSafe 대시보드에서 발급받은 TYPESAFE_API_KEY가 필요하며, 이는 코딩 에이전트 로그인과는 별개입니다. Jev 결정이 없는 워크플로우는 해당 키가 필요하지 않습니다. 권한, 취소, 복구에 대한 내용은 호스트 통합을 참고하세요.
Pi에서 사용하기
Pi 1.1.0 설치를 완료했다면, 프로젝트에서 다음 명령어를 실행하세요:
pi install npm:@parcha/agentrun-pi@beta -l
pi --offline
-l은 이 프로젝트에 설치하고; --offline은 시작 다운로드를 건너뜁니다. Pi는 확장 기능을 로드하기 전에 프로젝트를 신뢰하는지 묻습니다. AgentRun 체크아웃이 필요하지 않습니다.
/agentrun demo는 스크립트된 리서치 예제를 로드하고,/agentrun run은 모델 호출 없이 이를 반복합니다./agentrun demo live는 구성된 Pi 모델과 Jev를 사용합니다./agentrun status는 설정을 확인하고,/agentrun은 그래프를 보여주며,/agentrun stop은 취소를 요청합니다.
Pi가 모델 접근 권한을 갖게 되면, 워크플로우 생성을 요청해 보세요:
/agentrun Research how this repository handles cancellation. Investigate the runtime and tests separately, then report gaps with file references.
Pi는 패키징된 스킬을 사용하여 워크플로우를 구축하고, 검사하며, 실행합니다. 열린 Pi 세션에 설치한 경우 /reload를 실행하세요. 프로젝트 로컬 정의 개정판에는 /agentrun save <이름>과 /agentrun load <이름>을 사용합니다. 저장된 내용은 실행 입력이나 실행 권한을 포함하지 않습니다. Pi 설정 및 제한.
추가 예시
| 예시 | 시연 내용 |
|---|---|
| Support answers | 검색, Jev 검사, 선택적 조사, 리뷰 폴백 |
| ... | |
| <a id="run-it"></a> |
리서치 데모
빌드된 체크아웃에서 스크립트된 리서치 워크플로우를 실행합니다: "우리 팀이 위키의 문서를 코드 저장소로 옮겨야 할까?"
npm run demo
npm run eval:research
이는 하위 질문을 계획하고, 병렬로 리서치하며, 증거를 검토하고, 보고서를 작성합니다. 평가는 스크립트된 응답과 함께 6가지 레이블링된 케이스를 확인합니다. 실제 Jev 및 Pi 모델 연결.
패키지, 상태 및 기여
| 패키지 | 책임 |
|---|---|
@parcha/agentrun-dsl | 워크플로우 정의, 검증, 검사 및 실행 |
| ... | |
이 릴리스는 0.1.0-beta.4입니다. 변경 로그와 계약 및 제한을 확인하세요. |
일반 함수(Ordinary functions)는 고정된 순서에는 충분할 수 있습니다. AgentRun은 단계를 워크플로우 문서에 저장하여 사용자가 검사하거나, 재실행하거나, 에이전트로부터 호출할 수 있게 합니다. 코드 노드(Code nodes)는 프로세스 권한으로 JavaScript를 실행하며, 신뢰할 수 없는 워크플로우 작성자에게는 호스트가 제어하는 샌드박스(sandbox)가 필요합니다. 타입 지정된 결정(Typed decisions)과 검증된 출력 형태(validated output shapes)가 답변이 사실적으로 정확하다는 것을 증명하지는 못합니다.
개발 설정 및 확인 사항은 Contributing를 참조하세요. 버그나 제안 사항은 Open an issue을 이용해 주세요.
코드와 문서는 Apache-2.0 라이선스를 사용합니다. Copyright 2026 Parcha Labs, Inc. 종속성은 자체 라이선스를 유지합니다. Built by Grep.ai.
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Show HN (AI)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기