Show HN: SHAI – 터미널 내재형 오픈소스 AI 코딩 어시스턴트
요약
SHAI는 터미널 환경에 내장된 오픈소스 AI 코딩 어시스턴트입니다. 이 에이전트는 대화형 인터페이스를 통해 코드 작성, 버그 수정, 질문 답변을 지원하며, 헤드리스 모드를 통한 스크립팅 및 자동화도 가능합니다. 또한, 쉘 실패 시 자동으로 수정을 제안하는 '쉘 어시스턴트' 기능과 OpenAI 호환 API 서버 기능을 제공하여 개발 워크플로우 전반에 걸쳐 통합적인 코딩 파트너 역할을 수행합니다.
핵심 포인트
- 터미널 기반의 대화형 AI 코딩 에이전트로, 코드 작성 및 디버깅을 지원합니다.
- 헤드리스 모드를 통해 스크립팅 및 자동화 작업에 활용할 수 있습니다.
- 쉘 어시스턴트 기능으로 명령 실패 시 자동으로 수정 제안을 합니다.
- OpenAI 호환 API 서버를 제공하여 외부 서비스와의 연동이 용이하며, 다중 LLM 공급자를 지원합니다.
- 프로젝트 컨텍스트(`SHAI.md`) 및 커스텀 에이전트 구성 기능을 통해 프로젝트별 맞춤형 지능을 구현할 수 있습니다.
shai 는 터미널에 거주하는 코드 작성 파트너인 코딩 에이전트입니다. Rust 로 사랑으로 작성되었습니다 <3
인터랙티브 코딩 에이전트- 터미널에서 shai 와 대화하며 코드를 작성하고 버그를 수정하며 답변을 받습니다
헤드리스 모드- 스크립팅 및 자동화를 위해 프롬프트를 직접 shai 에 파이프합니다
HTTP 서버- OpenAI 호환 API 와 SSE 스트리밍으로 서비스를 실행합니다
쉘 어시스턴트- 터미널에서 명령이 실패할 때 자동으로 수정을 제안합니다
프로젝트 컨텍스트- SHAI.md 를 통해 프로젝트별 정보를 로드합니다
files
MCP 지원- MCP 와 OAuth 지원을 갖춘 전문 에이전트 구성
다중 LLM 제공자- OVHCloud, OpenAI, 그리고 호환되는 엔드포인트와 함께 작동합니다
최신 릴리스를 다음 명령어로 설치합니다:
curl -fsSL https://raw.githubusercontent.com/ovh/shai/main/install.sh | sh
마지막 unstable 버전을 다음 명령어로 설치합니다:
curl -fsSL https://raw.githubusercontent.com/ovh/shai/main/install.sh | SHAI_RELEASE=unstable sh
shai 바이너리는 $HOME/.local/bin 에 설치됩니다
기본적으로 shai 는 익명 사용자로 OVHcloud 를 사용하여 제한이 걸립니다! 계정으로 로그인하거나 다른 제공자를 선택하려면 다음을 실행하세요:
shai auth
제공자가 설정되면 shai 를 실행할 수 있습니다:
shai
인터랙티브 코딩 에이전트를 시작하려면 shai 를 단순히 실행합니다. shai 와 대화하며 코드를 작성하고 버그를 수정하고 질문을 답변할 수 있습니다.
Shai 는 사용자 인터페이스 없이 헤드리스 모드로도 실행할 수 있습니다. 이 경우 프롬프트를 shai 에 파이프하면 stderr 에서 이벤트를 스트리밍합니다:
echo "make me a hello world in main.py" | shai
완료되면 전체 대화를 trace 으로 반환하도록 shai 를 지시할 수도 있습니다:
echo "make me a hello world in main.py" | shai 2>/dev/null --trace
이것은 shai 호출을 체인하는 데 유용합니다:
echo "make me a hello world in main.py" | shai --trace | shai "now run it!"
SSE 스트리밍 지원으로 HTTP 서비스로 shai 를 실행할 수 있습니다. 이 모드는 여러 API 엔드포인트를 제공합니다:
shai serve --port 3000
가용 API 엔드포인트:
POST /v1/chat/completions- OpenAI Chat Completions API (ephemeral 모드)
POST /v1/responses- OpenAI Responses API (stateful/stateless)
GET /v1/responses/{id}- ID 로 응답을 가져옵니다
POST /v1/responses/{id}/cancel- 응답을 취소합니다
POST /v1/multimodal- 단순 멀티모달 API (스트리밍)
POST /v1/multimodal/{session_id}- 단순 멀티모달 API (세션 포함)
옵션:
--port <PORT>
- 바인딩할 포트 (기본값: 3000)
--ephemeral - ephemeral 모드를 사용합니다 (요청마다 새 에이전트 생성)
[AGENT] - 지속 세션을 위한 에이전트 이름
shai 는 명령이 실패한 경우쉘 어시스턴트로도 작동하며 수정을 제안할 수 있습니다. 이는 터미널 출력을 모니터링하면서 명령 호크를 주입함으로써 작동합니다. 마지막 터미널 출력과 마지막 명령 및 오류 코드는 LLM 제공자에 분석을 위해 전송됩니다.
shai 를 쉘에 연결하려면 다음을 입력하세요:
shai on
예를 들어:
shai off
Shai 의 쉘 모니터링을 중지하려면 다음을 입력할 수 있습니다.
프로젝트 루트에 SHAI.md 파일을 만들어 Shai 가 프로젝트에 대해 알아야 할 정보를 포함할 수 있습니다 (아키텍처, 빌드 단계, 중요한 디렉터리 등). Shai 는 이 파일을 추가 컨텍스트로 자동으로 로드합니다.
단일 전역 구성이 아닌 별도의 구성에서 커스텀 에이전트를 만들 수 있습니다.
.ovh.config
에는 원격 MCP 서버가 구성된 커스텀 구성의 예가 포함되어 있습니다.
~/.config/shai/agents/ovh.config 에 이 파일을 배치하면 다음으로 에이전트를 나열할 수 있습니다:
curl https://raw.githubusercontent.com/ovh/shai/refs/heads/main/.ovh.config -o ~/.config/shai/agents/ovh.config
shai agent list
이 특정 에이전트로 shai 를 실행하려면 agent 하위 명령어를 사용하세요:
shai agent ovh
OVHCloud 는 shai 를 도구와 함께 사용할 수 있는 호환되는 LLM 엔드포인트를 제공합니다. OVHCloud 계정에서 Public Cloud 프로젝트를 먼저 생성한 다음 *AI E"
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Claude Code Search의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기