Show HN: Nous – 자율형 SWE Agent와 WebUI를 갖춘 오픈 소스 Agent 프레임워크
요약
TypedAI는 자율형 AI 에이전트, LLM 기반 워크플로우 및 챗봇 개발/실행을 위한 풀 피처 플랫폼입니다. 이 플랫폼은 고급 소프트웨어 개발자 에이전트를 포함하여 코드 리뷰, PR 생성 등 복잡한 엔지니어링 작업을 자동화합니다. 다양한 LLM 서비스 지원, 인간 참여형 설정, 그리고 OpenTelemetry 기반의 관측성 기능을 제공하며 CLI 및 Web UI를 통해 접근 가능합니다.
핵심 포인트
- 고급 자율형 에이전트: 코드 편집, PR 생성, 코드 리뷰 등 복잡한 소프트웨어 개발 워크플로우 자동화
- 광범위한 LLM 지원: OpenAI, Anthropic, Gemini, Groq 등 다양한 최신 LLM 서비스를 네이티브하게 통합
- 강력한 플랫폼 기능: 인간 참여형(Human-in-the-loop) 설정, OpenTelemetry 기반 관측성, 함수 호출 가능 도구/통합을 제공
- 다양한 인터페이스 및 배포 옵션: CLI와 Web UI를 모두 지원하며, 로컬 실행부터 SSO가 적용된 클라우드 엔터프라이즈 배포까지 가능
- 복잡한 추론 기능 구현: 계층적 작업 분해(Hierarchical task decomposition) 및 메모리/함수 호출 이력 관리를 통해 복잡한 워크플로우를 처리
개발자를 위한 TypeScript 우선 AI 플랫폼
자율형 AI 에이전트(Autonomous AI agents) 및 LLM 기반 워크플로우
홈 | 설정 | 관측성 (Observability) | 함수 호출 (Function calling) | 자율형 AI 에이전트 (Autonomous AI Agent) | AI 소프트웨어 엔지니어 (AI Software Engineer) | AI 코드 리뷰 (AI Code reviews) | 도구/통합 (Tools/Integrations) | 로드맵 (Roadmap)
기능 | UI 예시 | 코드 예시 | 기여하기
TypedAI는 에이전트, LLM 기반 워크플로우 및 챗봇을 개발하고 실행하기 위한 풀 피처(full-featured) 플랫폼입니다.
이 플랫폼을 구축하는 데 도움을 준 유능한 소프트웨어 엔지니어링 에이전트들이 포함되어 있습니다.
- 고급 자율형 에이전트 (Advanced Autonomous agents)
- 소프트웨어 개발자 에이전트 (Software developer agents)
- 풀 리퀘스트 (Pull request) 코드 리뷰 에이전트
- AI 채팅 인터페이스
- Slack 챗봇
- 다양한 LLM 서비스 지원 - OpenAI, Anthropic (native & Vertex), Gemini, Groq, Fireworks, Together.ai, DeepSeek, Ollama, Cerebras, SambaNova, OpenRouter, X.ai
- LLM 인터페이스의 멀티 에이전트 확장 추론 (Multi-agent extend-reasoning) 구현
- 설정 가능한 인간 참여형 (Human-in-the-loop) 설정
- 기능적 호출 가능 도구/통합 (Filesystem, Jira, Slack, Perplexity, Google Cloud, Gitlab, GitHub 등)
- CLI 및 Web UI 인터페이스
- 로컬 실행 또는 멀티 유저/SSO를 통한 클라우드 배포
- OpenTelemetry 기반의 관측성 (Observability)
- Python 스크립트/패키지 실행을 통해 광범위한 Python AI 생태계 활용
TypedAI는 자동화 및 개발 워크플로우를 위한 강력한 명령줄 도구(command-line tools)를 제공합니다:
# ai 래퍼 스크립트를 사용한 빠른 예시
ai query "What test frameworks does this repository use?"
ai code "Add error handling to the user authentication function"
...
ai 스크립트는 로컬에서 실행되는 반면, aid는 격리를 위해 Docker에서 실행됩니다. 두 가지 모두 자율적인 코드 편집 작업을 위한 특화된 codeAgent를 포함하여 모든 CLI 에이전트에 대한 액세스를 제공합니다.
포괄적인 CLI 문서는 CLI 사용 가이드를 참조하십시오.
- Google의 Self-Discover 및 기타 논문에서 영감을 받은 추론/계획 (Reasoning/planning)
- 복잡한 워크플로우를 위한 메모리 및 함수 호출 이력 (Memory and function call history)
- 계층적 작업 분해를 통한 반복적 계획 (Iterative planning with hierarchical task decomposition)
- 다단계 함수 호출 및 로직을 위한 생성된 코드의 샌드박스 실행 (Sandboxed execution)
- 소스 코드로부터 자동 생성되는 LLM 함수 스키마 (LLM function schemas)
- 예산 제어, 에이전트 주도 질문 및 에러 핸들링을 위한 인간 참여 (Human-in-the-loop)
자율형 에이전트(Autonomous agent)에 대한 자세한 내용은 관련 문서를 참조하십시오.
-
로컬 저장소를 위한 코드 편집 에이전트 (Code Editing Agent)
-
프로젝트 초기화, 컴파일, 테스트 및 린트 (Lint) 자동 감지
-
작업 파일 선택 에이전트가 관련 파일을 선택
-
설계 에이전트가 구현 계획을 수립
-
컴파일, 린트, 테스트, 수정 과정을 포함하는 코드 편집 루프
-
컴파일 에러 분석기는 온라인 검색, 추가 파일 추가 및 패키지 설치 가능
-
필요한 경우 추가적인 코드 편집 루프를 통한 변경 사항의 최종 검토.
-
소프트웨어 엔지니어 에이전트 (티켓에서 Pull Request 워크플로우까지):
-
GitLab/GitHub에서 적절한 저장소 탐색
-
클론 (Clone) 및 브랜치 생성
-
코드 편집 에이전트 호출
-
머지 리퀘스트 (Merge request) 생성
-
코드 리뷰 에이전트:
-
설정 가능한 코드 리뷰 가이드라인
-
GitLab 머지 리퀘스트의 적절한 라인에 제안된 변경 사항과 함께 댓글 게시
-
저장소 애드혹 (ad hoc) 쿼리 에이전트
-
코드베이스 인식 (Codebase awareness) - 작업 파일 선택 에이전트에서 사용하는 선택적 인덱스 생성
소프트웨어 개발자 에이전트(Software developer agents)에 대한 자세한 내용은 관련 문서를 참조하십시오.
- 저장소 또는 제공된 Dockerfile로부터 단일 사용자 모드로 실행
- CLI 인터페이스
- Web 인터페이스
- Firestore 및 Cloud Run에서의 Scale-to-zero 배포
- 멀티 유저 SSO 엔터프라이즈 배포 (Google Cloud IAP 사용)
- Terraform, 인프라 스크립트 및 더 많은 인증 옵션 곧 추가 예정
기본값은 환경 변수를 통해서도 설정할 수 있습니다.
TypedAI는 온라인에서 확인할 수 있는 여러 가지 이유로 인해 LangChain을 사용하지 않습니다.
TypedAI 플랫폼의 범위는 LangChain 및 LangSmith에서 발견되는 기능들을 포괄합니다.
Multiple Chains를 위한 LangChain 문서 예시와 그에 상응하는 TypedAI 구현을 비교해 보겠습니다.
import { PromptTemplate } from "@langchain/core/prompts";
import { RunnableSequence } from "@langchain/core/runnables";
import { StringOutputParser } from "@langchain/core/output_parsers";
...
import { runAgentWorkflow } from '#agent/agentWorkflowRunner';
import { anthropicLLMs } from '#llms/anthropic'
const cityFromPerson = (person: string) => `What is the city ${person} is from? Only respond with the name of the city.`;
...
TypedAI 코드는 프롬프트 인자(prompt arguments)에 대해 정적 타이핑 (static typing)을 지원한다는 장점도 있어, 손쉽게 리팩터링 (refactor)을 할 수 있습니다. 단순한 제어 흐름 (control flow)을 사용하므로 중단점 (breakpoints)이나 로깅 (logging)을 통한 디버깅 (debugging)이 용이합니다.
완전 자율형 에이전트 (fully autonomous agent)를 실행하려면:
startAgent({
agentName: 'Create ollama',
initialPrompt: 'Research how to use ollama using node.js and create a new implementation under the llm folder. Look at a couple of the other files in that folder for the style which must be followed',
...
LLM 함수 호출 (function calling) 스키마 (schema)는 클래스 메서드에 @func 데코레이터 (decorator)를 붙임으로써 자동으로 생성되므로, zod나 JSON을 사용한 정의 중복을 피할 수 있습니다.
@funcClass(__filename)
export class Jira {
instance: AxiosInstance | undefined;
...
이슈 (issues), 풀 리퀘스트 (pull requests) 또는 토론 (discussions)을 통한 프로젝트 기여를 진심으로 환영합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 HN AI Engineering의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기