AmaGris 사용 매뉴얼

AmaGris 는 한 종목을 여러 AI 에이전트가 역할을 나눠 분석하는 도구입니다. 재무·기술·뉴스·심리 분석가가 각자 시장 데이터를 조회하고, 강세론·약세론 리서처가 논거를 세우고, 트레이더가 판단을 내리면 리스크 매니저가 검증합니다. 결과는 근거가 붙은 마크다운 리포트로 나옵니다.

⚠️ 투자 고지 — AmaGris 가 만들어 내는 분석과 의견은 의사결정 지원을 위한 참고 자료이며 투자 자문이나 매매 권유가 아닙니다. LLM 은 사실을 틀리게 말할 수 있고, 데이터 조회가 실패하면 리포트에 오류로 표기됩니다. 모든 투자 판단과 그 결과는 이용자 본인의 책임입니다.


1. 화면 구성

앱을 켜면 상단 메뉴바, 좌측 도킹 패널, 가운데 작업 영역이 보입니다.

영역 내용
Session List 지금까지 만든 AI 채팅 세션 목록. 클릭하면 그 세션이 열립니다.
Watch List 관심종목. 그룹별로 종목을 담아 두고 더블클릭으로 바로 분석합니다.
작업 영역(MDI) AI Chat 세션·코드·텍스트·이미지 탭이 열리는 곳. 분석 리포트도 여기 표시됩니다.

패널은 드래그해서 다른 위치에 도킹하거나 떼어 낼 수 있고, 배치는 다음 실행 때 복원됩니다.

메뉴바

메뉴 항목 설명
File New Session 새 AI Chat 세션을 엽니다.
Import Stock… 종목 목록 파일(.ini)을 불러와 일괄 분석합니다. (6장)
Open / Save / Close File 파일 열기·저장·닫기.
Exit 종료.
View Session List / Watch List 도킹 패널을 다시 엽니다(닫았을 때).
Build Simulate Project SpiderGen 프로젝트 시뮬레이터 실행(개발용).
Option Settings… 일반·Lint·인덱싱·로깅 설정. (9장)
AI Model… 사용할 LLM 등록·편집. (2장)
Agent Roles… 역할(페르소나·도구·모델 사용 방식) 정의. (3장)
Agent Team… 팀(스테이지·역할·역할별 모델) 구성. (3장)
Help About 버전과 배포 코드 표시.

2. 시작하기 — 모델 등록

분석은 LLM 이 수행하므로 모델을 먼저 등록해야 합니다.

LLM 추가 (Option ▸ AI Model…)

추가 를 누르고 값을 채웁니다.

항목 설명
이름 목록에 표시될 이름. 역할에 모델을 배정할 때 이 이름으로 고릅니다.
모델 모델 ID (예: qwen3-32b-awq, claude-sonnet-4-5).
호스트 / 포트 LLM 서버 주소. 로컬 vLLM·Ollama 면 그 서버의 IP·포트.
Chat 경로 보통 /v1/chat/completions(OpenAI 호환) 또는 /api/chat(Ollama). 이 값으로 서버 종류를 자동 판별합니다.
max_model_len 모델의 컨텍스트 한도. 비워 두면 서버가 조회해 자동으로 채웁니다. 자동 조회가 실패하는 서버에서만 직접 입력하세요.
API Key 필요한 서비스만.
Vision 이미지 입력을 지원하는 모델이면 체크.
HTTPS / 추가 헤더 게이트웨이를 거치는 경우에 사용.

여기서 추가한 항목은 ai-client-config.json 에 저장되고, 서버가 기본 제공 목록(ai-config.json)과 합쳐서 보여 줍니다. 설치 폴더 밖에 저장되므로 재설치·업데이트를 해도 유지됩니다.

계정 로그인 (Claude · ChatGPT)

API 키 대신 계정으로 연결할 수도 있습니다. 로그인하면 토큰이 암호화되어 저장되고(ai-oauth-tokens.json), 이후에는 자동으로 사용됩니다.


3. 에이전트 팀과 역할

AmaGris 의 분석은 팀 구성표대로 실행됩니다. 구성은 두 창으로 나뉩니다.

팀(Team)  →  스테이지(Stage, 실행 순서)  →  멤버(Member = 역할 + 모델)
                                              └ 역할(Role) = 페르소나 + 도구 + 추론 여부

기본 팀 (4단계)

스테이지 방식 참여 역할 하는 일
1. 분석 동시 재무 분석가 · 기술 분석가 · 뉴스 분석가 · 감성 분석가 각자 도구로 데이터를 조회해 독립적으로 분석
2. 토론 동시 강세론 리서처 · 약세론 리서처 1단계 리포트만 보고 각자 매수/매도 논거 구성
3. 결정 순차 트레이더 앞의 모든 내용을 종합해 판단
4. 리스크 순차 리스크 매니저 트레이더 판단을 검증하고 신뢰도를 조정

동시(parallel) vs 순차(sequential) — 동시 스테이지의 멤버는 이전 스테이지들의 산출물만 받고 서로의 결과는 보지 않습니다. 순차 스테이지의 멤버는 이전 스테이지 전부 + 같은 스테이지의 앞 멤버까지 누적해서 받습니다.

토론 스테이지가 동시인 이유는 강세·약세가 서로의 논거를 보지 않고 각자 독립적으로 구성하게 하기 위해서입니다. 서로를 보면 한쪽이 다른 쪽에 끌려갑니다.

팀 편집 (Option ▸ Agent Team…)

💡 역할마다 다른 모델을 쓸 수 있습니다. 단순 수집·요약을 하는 분석가에는 빠르고 저렴한 모델을, 판단을 내리는 트레이더·리스크 매니저에는 추론이 강한 모델을 배정하는 식이 실용적입니다.

역할 편집 (Option ▸ Agent Roles…)

항목 설명
Key 팀 구성이 참조하는 식별자(예: technical_analyst).
표시명 리포트와 화면에 나오는 이름(예: 기술 분석가).
추론(thinking) 체크하면 추론 모드로 실행합니다. 판단·검증 역할에 유리하고, 수집·요약 역할에는 느리고 비쌉니다.
도구 이 역할이 쓸 수 있는 시장 데이터 도구. 체크한 것만 호출할 수 있습니다.
시스템 프롬프트 페르소나. "무엇을 어떤 관점으로 분석하고 마지막 줄에 무슨 결론을 달아라" 를 여기서 정합니다.

역할 정의는 agent-roles-config.json 에 저장됩니다. 파일이 정상이면 그 파일만이 진실입니다 — 삭제한 역할은 내장 기본값으로 되살아나지 않습니다. 실수로 다 지웠다면 초기화 를 누르세요.


4. 종목 분석 (/analyze)

실행 방법 세 가지

  1. 슬래시 명령 — 채팅에 /analyze 삼성전자 또는 /trade 005930
  2. 자연어삼성전자 분석해줘 처럼 "〈종목〉 분석" 형태로 끝나면 자동으로 분석이 시작됩니다. (뒤에 다른 말이 붙으면 — 예: 삼성전자 분석 자료 찾아줘 — 일반 대화로 처리됩니다)
  3. 관심종목 더블클릭5장 참조

종목명·6자리 종목코드 둘 다 됩니다.

진행 중 표시

분석은 수 분이 걸립니다. 스테이지가 끝날 때마다 결과가 이어서 나옵니다.

🔍 분석가 4인이 데이터 분석 중…
💬 강세론·약세론 토론 중…
📊 트레이더 최종 판단 중…
🛡️ 리스크 관리자 검증 중…

리포트 구성

# 트레이딩 분석 리포트 — 삼성전자
시장: KR · 팀: 기본 분석팀

## 1. 분석
### 재무 분석가
…
### 기술 분석가
…
## 2. 토론
### 강세론 리서처 / 약세론 리서처
## 3. 결정
### 트레이더
## 4. 리스크
### 리스크 매니저
## 최종 결론
(트레이더 판단 + 리스크 매니저의 조정 신뢰도)

최종 결론의 신뢰도는 리스크 매니저가 조정한 값이 우선합니다 — 리스크 매니저가 마지막 관문이라 트레이더의 값을 덮어씁니다.

조회에 실패한 데이터는 지어내지 않고 리포트에 오류로 표기됩니다. 결론을 읽기 전에 각 분석가 섹션에 오류가 있는지 먼저 확인하세요.


5. 관심종목 (Watch List)

좌측 Watch List 패널에서 관리합니다.

그룹

상단 셀렉트박스로 그룹을 고르고, 로 그룹 추가, 로 삭제합니다. 그리드에는 선택한 그룹의 종목만 표시됩니다.

종목 추가

종목 추가… 를 누르면 검색창이 열립니다. 검색어를 넣고 Enter → 결과에서 종목을 고르고 → 담을 그룹을 선택 → 추가. 결과 행을 더블클릭하면 바로 추가되고 창은 닫히지 않아 연속으로 담을 수 있습니다.

종목 검색은 키 없이도 동작합니다 — DART 키가 있으면 DART 기업명 색인을, 없으면 네이버 자동완성을 씁니다. 다만 통칭과 공식명이 다른 일부 종목(예: 엔씨소프트 → 공식명 NC)은 공식명으로 검색해야 나올 수 있습니다.

분석 실행

관심종목 그리드의 행을 더블클릭하면 활성 AI Chat 세션에서 그 종목의 /analyze 가 실행됩니다.

관심종목은 watchlist-config.json 에 즉시 저장되며 설치 폴더 밖에 있어 재설치·업데이트에도 유지됩니다.


6. 일괄 분석 (Import Stock)

여러 종목을 한 번에 분석하려면 File ▸ Import Stock… 으로 목록 파일(.ini)을 불러옵니다.

파일 형식

한 줄에 한 종목입니다. INI 관례도 허용합니다.

; 주석은 ; 또는 # 로 시작
[관심목록]          ; 섹션 헤더는 무시됩니다
삼성전자
005930
종목3=SK하이닉스     ; key=value 형태면 = 뒤를 종목명으로 씁니다

불러오면 활성 채팅 세션이 없을 때 하나를 새로 열고, 모델 연결이 준비될 때까지 최대 12초 기다린 뒤 순서대로 분석을 시작합니다. 준비가 안 되면 "AI 세션이 준비되지 않았습니다" 안내가 나오니 모델 연결을 확인하고 다시 시도하세요.

종목 하나에 수 분이 걸립니다. 목록이 길면 그만큼 오래 걸리고 LLM 호출 비용도 그만큼 듭니다.


7. 시장 데이터와 API 키

에이전트는 아래 7가지 도구로 데이터를 직접 조회합니다. 역할별로 어떤 도구를 쓸지는 Agent Roles 에서 정합니다.

도구 내용 출처 키 필요
get_price 현재가·등락률 한국투자증권(KIS)
get_ohlcv 기간별 시·고·저·종가와 거래량(캔들) KIS
get_fundamentals PER·PBR·ROE·부채비율 등 재무지표 KIS
get_technical_indicators RSI·MACD·이동평균 등 보조지표 캔들에서 계산 ✅(캔들)
get_disclosures 전자공시 DART
get_news 최근 종목 뉴스 네이버 증권
get_sentiment 뉴스 기반 감성 점수(-1 ~ +1) 뉴스 + LLM 채점

위 표의 "키 필요"는 시세 소스를 KIS 로 골랐을 때 기준입니다. 네이버증권을 고르면 시세·재무·기술지표도 키 없이 동작하고, 키가 필요한 것은 공시(DART)뿐입니다.

감성 점수는 그 도구를 호출한 역할의 모델이 그대로 채점합니다 — 별도 모델을 지정하지 않습니다.

시세 소스 선택과 키 입력 (Option ▸ Settings… ▸ 시세서버)

Settings 의 「시세서버」 탭에서 시세를 어디서 가져올지 고르고 필요한 키를 입력합니다. 소스를 고르면 아래 설명 상자에 그 소스의 특징이 바로 표시됩니다.

시세 소스 특징
한국투자증권 (KIS) 본인 명의 KIS 계좌 필요 당일 현재가·일봉·재무까지 모두 조회. 호출 한도는 앱키 단위(실전 초당 20건)
네이버증권 불필요 키도 계좌도 없이 바로 사용. 현재가·일봉·PER/PBR/ROE·부채비율까지 조회되고 거의 실시간. 다만 공식 공개 API 가 아니라 예고 없이 바뀔 수 있음
공공데이터포털 무료·계좌 불필요(이메일 가입) 하루 1회 갱신, 영업일 기준 하루 뒤 반영이라 당일 현재가는 조회 불가. 종가·일봉·거래량·시가총액·52주 고저까지 제공되고, PER/PBR·ROE·부채비율은 원본에 없어 '확인 불가'로 표기됩니다

키가 하나도 없다면 네이버증권을 고르세요 — 설치 직후 바로 분석이 돌아갑니다. 안정적으로 오래 쓰실 거면 KIS 를 권합니다(공식 API 라 형식이 바뀌지 않습니다).

공공데이터포털을 고르면 시세는 전 영업일 종가입니다. 리포트에는 기준일(asOf)이 함께 표시되므로 당일 시세로 오해할 일은 없지만, 장중 판단에는 맞지 않습니다.

인증키는 data.go.kr 이 주는 Encoding 키·Decoding 키 어느 쪽을 붙여넣어도 됩니다(앱이 알아서 맞춥니다).

ℹ️ 소스마다 지표 값이 다를 수 있습니다. 예컨대 PER 은 KIS 가 최근 실적 기준, 네이버가 연간 확정 기준이라 같은 종목에서도 값이 갈립니다. 어느 쪽이 틀린 게 아니라 산출 기준이 다른 것이며, 리포트에는 어느 소스에서 온 값인지 함께 표시됩니다.

DART 키는 시세 소스와 무관하게 공시 조회와 종목 검색에 쓰이므로 같은 탭 아래쪽에서 항상 입력할 수 있습니다.

키는 어떻게 보관되나

입력한 키는 암호화되어(AES-256-GCM 봉인) ai-settings.json 에 저장됩니다. 계정 로그인 토큰과 같은 방식이며, 파일을 열어 봐도 평문 키는 보이지 않습니다. 설치 폴더 밖(userData)이라 재설치·업데이트에도 유지됩니다.

환경변수로 지정하기 (선택)

운영 자동화 등으로 화면 입력 대신 환경변수를 쓸 수 있습니다. 환경변수가 설정 화면 값보다 우선합니다.

환경변수 용도
KIS_APP_KEY / KIS_APP_SECRET 시세·재무 조회
KIS_PAPER true 면 모의투자 서버 사용
DART_API_KEY 전자공시 조회 + 종목 검색
DATAGO_SERVICE_KEY 공공데이터포털 인증키
AMAGRIS_QUOTE_PROVIDER 시세 소스 강제 (kis · datago · naver)

키 발급처 — DART: opendart.fss.or.kr (무료, 이메일 가입 후 즉시), KIS: 한국투자증권 KIS Developers (본인 명의 위탁계좌 필요, 비대면 개설 가능), 공공데이터포털: data.go.kr (무료).

키가 없으면 해당 도구는 조회에 실패하고 리포트에 오류로 표기됩니다.

키가 하나도 없어도 쓸 수 있습니다 — 시세 소스를 네이버증권으로 두면 시세·재무·기술지표·뉴스·감성·종목검색까지 전부 동작하고, 빠지는 것은 공시(DART)뿐입니다.


8. 일반 대화와 슬래시 명령

분석 외에 일반 AI 채팅으로도 쓸 수 있습니다. 새 세션을 열고 그냥 물어보면 됩니다. 작업 폴더를 지정하면 그 폴더의 파일을 읽고 검색하고 수정할 수도 있습니다.

슬래시 명령

명령 동작
/analyze <종목> · /trade <종목> 멀티에이전트 종목 분석
/find <파일명 일부> 파일 이름으로 찾기 — LLM 을 거치지 않고 즉시 실행
/grep <검색어> [-n 개수] 프로젝트 내용 검색(기본 20건, 최대 500건) — 즉시 실행
/skill <이름> [요청] 스킬 지침을 이번 요청에 주입하고 평소대로 대화 진행
/<스킬명> [요청] 등록된 스킬 이름은 /skill 없이 바로 호출됩니다
/help 사용 가능한 명령과 스킬 목록

/find·/grep·/help 는 LLM 을 부르지 않으므로 즉시 응답하고 토큰을 쓰지 않습니다.

명령 실행 승인

AI 가 셸 명령을 실행하려 하면 승인 요청이 뜹니다. 무엇을 실행하려는지 확인하고 허용 여부를 고르세요. 위험한 명령은 별도로 차단되며, 실행에는 시간 제한이 걸립니다.


9. 설정 (Option ▸ Settings…)

내용
General 모델 전환 시 대화 초기화 여부 등 일반 동작.
Lint 코드 편집 시 문법 검사 옵션.
Indexing 프로젝트 인덱싱(코드 검색·RAG) 설정. 임베딩 provider 를 여기서 고릅니다.
Logging 로그 수집 범위. 문제 재현·원인 파악에 필요할 때만 올리세요.
시세서버 시세를 가져올 소스 선택 + KIS·공공데이터포털·DART 키 입력. (7장)

10. 저장 위치

설정과 데이터는 설치 폴더 밖(%APPDATA%\AmaGris)에 저장되어 재설치·업데이트에도 유지됩니다.

파일 내용
ai-client-config.json 직접 추가한 LLM 목록
ai-oauth-tokens.json 계정 로그인 토큰(암호화 저장)
ai-settings.json Settings 창의 설정값
agent-team-config.json 팀 구성
agent-roles-config.json 역할 정의
watchlist-config.json 관심종목(그룹 포함)
trusted-folders.json 신뢰한 작업 폴더 목록

백업하려면 이 폴더를 통째로 복사해 두면 됩니다. ai-oauth-tokens.json 은 암호화되어 있고 복호화 키는 앱 설치본 쪽에 있어, 이 파일만 유출되어도 단독으로는 평문 복원이 되지 않습니다.


11. 자동 업데이트

앱을 켜면 새 버전을 자동으로 확인합니다.

나중에 를 고르면 그대로 실행되고, 다음에 켤 때 다시 물어봅니다. 네트워크가 안 되거나 서버가 응답하지 않으면 조용히 넘어가고 앱은 정상적으로 열립니다.

현재 버전은 Help ▸ About 에서 확인할 수 있습니다.


12. 알아 두면 좋은 것

분석이 오래 걸립니다. 역할 8개가 각자 LLM 을 호출하고 그중 일부는 도구까지 부르기 때문입니다. 종목 하나에 수 분이 정상입니다. 빠르게 돌리고 싶다면 팀에서 스테이지나 멤버를 줄이세요.

결론만 읽지 마세요. 분석가 섹션에 데이터 조회 오류가 있으면 그 위에 쌓인 토론·결정·리스크 판단 전체가 부실해집니다.

LLM 은 틀립니다. 도구로 조회한 수치는 실제 데이터지만, 그것을 해석한 문장은 모델이 만들어 낸 것입니다. 숫자 근거가 인용되지 않은 주장은 특히 의심하세요.

모델을 바꿔 보세요. 같은 종목이라도 트레이더·리스크 매니저에 어떤 모델을 배정하느냐에 따라 결론이 달라집니다. 판단 역할에는 추론이 강한 모델을 쓰는 편이 안정적입니다.


요약: 첫 사용 흐름

  1. 설치하고 실행합니다.
  2. Option ▸ AI Model… 에서 쓸 모델을 등록합니다(또는 계정 로그인).
  3. Option ▸ Agent Team… 에서 각 멤버에 모델을 배정합니다. (모든 멤버에 지정해야 합니다)
  4. Option ▸ Settings… ▸ 시세서버 에서 시세 소스를 고릅니다. 키가 없으면 네이버증권을 고르면 바로 됩니다. (KIS·DART 키가 있으면 여기서 입력)
  5. File ▸ New Session 으로 세션을 열고 /analyze 삼성전자 를 입력합니다.
  6. 자주 보는 종목은 Watch List 에 담아 두고 더블클릭으로 분석합니다.