Skip to content

Latest commit

 

History

History
600 lines (454 loc) · 28.6 KB

File metadata and controls

600 lines (454 loc) · 28.6 KB

Argo: AI 에이전트를 위한 통합 검색과 증거 검증

中文 · English · 日本語 · 한국어 · Español

소개 · 비교 · 증명 · 메커니즘 · 빠른 시작 · 기능 · 설정 · 업데이트

license python version engines mcp

이 저장소는 taxueseek의 DeepSeek Harness 플러그인 라인업 중 하나입니다. 형제 플러그인: dsh-files(파일 전송·문서 읽기) · dsh-snippets(스니펫 즐겨찾기) · dsh-healthcheck(읽기 전용 점검) · dsh-plugin-guard(플러그인 보안 감사) · taxue-dsh-artisan(프롬프트 역추론·멀티 프로바이더 이미지 생성) — 전체 플러그인은 프로필에서

모델 내장 검색 / AI 검색 / 메타검색보다 강한 점

간단히: 앞의 세 가지는 사람이 정보를 찾게 돕습니다. Argo는 에이전트가 검색과 검증을 한 파이프라인에서 하게 합니다. 차이는 UI가 아니라 산출물 — 사람용 요약 페이지·링크 목록 대, 에이전트가 정렬하고 fetch로 재확인하고 컨텍스트를 안 터뜨리는 증거.

왼쪽: 사람용 기본 검색 세 가지. 오른쪽: 에이전트가 흡수할 Argo 증거 JSON

차원 모델 내장 검색 AI 검색(요약형) 메타검색 / 검색 엔진 Argo
결과 형태 이어 붙인 장문 사람용 요약 페이지 SERP 링크 목록 압축 JSON: 증거 후보 + 신뢰도 분해
수직 질문(시세 / 화학식) 일반 웹 일반 웹 후 요약 일반 웹 수직 소스 직결, 답형 결과
증거 신뢰도 점수 없음 구조화 점수 없음 점수 없음 selection · absorption · freshness · 합의
반복 질의 매번 네트워크 매번 네트워크 페이지 캐시 이중 캐시(메모리 + SQLite), 핫 쿼리 약 10ms
비용 제어 제어 불가 호출당 비쌈 무료지만 수고 예산 모드, 무료 우선, 키는 모두 선택
다국어 모델을 따름 모델을 따름 엔진을 따름 언어 감지 + 엔진 로케일 파라미터 + 다국어 라우팅

메커니즘상 Argo는 검색을 증거 파이프라인으로 다룹니다: 언어 감지 → 도메인 라우트 → 다중 엔진 회수 → RRF 융합 → 증거 속평. 에이전트가 정렬하고, fetch로 확인하고, 컨텍스트 안에 넣을 재료를 줍니다.


무엇인가

Argo는 AI 에이전트를 위한 다국어 검색 인프라입니다.

실제 검색은 결코 「한 언어 + 검색창 하나」가 아닙니다. A주 시세를 묻는 사람, World Cup을 묻는 사람, 일본어로 애니를 찾는 사람, IMDb에서 감독 정보를 원하는 사람이 있습니다. Argo의 출발점은 단순합니다—도메인·언어·의도에 따라 길을 고르고, 문제를 알맞은 소스로 보내지 웹 제목만 훑지 않습니다. 온라인 검색과 로컬 파일 검색을 함께 쓸 수 있습니다.

산출물은 「링크 목록」이 아니라 증거 후보 + 신뢰도 분해입니다. 길이 맞아야 증거가 설 수 있습니다.

「검색 API를 한 겹 더 감싼 것」과의 차이

흔한 방식 Argo
엔진 하나·키 하나에 고정 다중 엔진 자동 라우팅, 무료 우선·예산 설정 가능
모든 질문을 일반 웹 검색 수직 소스 우선: 시세·영화·스포츠·매크로·화학 등 답형 결과
중·영에만 최적화 언어 감지 + 엔진 언어 파라미터 + 교차 언어 폴백
검색 후 스니펫 요약만 선택 문턱 × 증거 밀도 × 시의성 × 다중 소스 합의
엔진 하나가 죽으면 전체 중단 서킷 브레이커, 네거티브 캐시, 단계적 복구(수직 소스 오염 방지)
매번 네트워크 재호출 이중 캐시(메모리 + SQLite), 핫 쿼리 약 10ms급
일상·연구에 같은 느린 경로 일상은 엔진 적게, 심층 연구는 넓게
긴 JSON이 에이전트 컨텍스트 소모 MCP 응답 압축, 스니펫 제어 가능

질문 형태에 맞는 라우팅

네 가지 실제 경로: 금융, 영화, 다국어, 지리

이렇게 물으면 대개 일어나는 일
贵州茅台股价 A주 시세 도메인, 스냅샷 소스 우선, 충분하면 early-stop
AAPL / US pre-market 미국 주식 도메인, A주와 분리
肖申克的救赎 主演 / Inception director 영화 도메인 → IMDb 등
梅西 俱乐部 / 库里 球队 스포츠 도메인 → TheSportsDB 등
埃菲尔铁塔在哪 / where is Eiffel Tower 지리 엔티티 → OpenStreetMap 등
NASA founding year / 国务院职能 조직 엔티티 → Wikidata 등
周杰伦 专辑 / Taylor Swift album 미디어 도메인 → iTunes 등
アニメ おすすめ / 한국 영화 추천 JA/KO 감지 → 언어 친화 소스, 중국어 전용 사이트 회피
US CPI, China GDP 매크로 도메인, 국가 분리
阿司匹林 分子式 화학 → PubChem 계열 답
TSMC valuation debate (deep research) 하위 질문 + 병렬 소스, 수직 소스 가중

동작 방식

질의 → 언어·도메인 → 다중 엔진 회수 → RRF → 증거 → 통합 JSON

query
  ├─ intent clarify (optional)
  ├─ query rewrite (optional; routing still sees original intent)
  ├─ language detect + language preference
  ├─ route (domain rules + TF-IDF + budget + lang supplements + hot-path cache)
  ├─ multi-engine recall (circuit breaker / negative cache / parallel)
  ├─ staged empty-result recovery (widen → same family/general → cross-lang; anti-pollution)
  ├─ RRF fusion + optional re-rank
  ├─ evidence skim (authority · density · freshness · consensus)
  └─ unified JSON (incl. engine_outcomes / recovery)

증거 점수 (요약)

selection  ≈ domain authority; SERP / redirect shells ranked very low
absorption ≈ density of numbers / definitions / comparisons / disclosures
freshness  ≈ publish time (ignores historical comparison years like “since 2015”)
composite  ≈ 0.40·selection + 0.35·absorption + 0.15·freshness + 0.10·engine score

결과에 selection, absorption, credibility_fast, evidence_flags 등이 포함되어 에이전트가 바로 정렬할 수 있습니다.

에이전트 규율 (권장)

  1. 고위험 질문(포지션, 안전, 「이게 사실인가?」): 검색 → 빠른 점수 확인 → 상위 결과 fetch → 그다음 결론
  2. 숫자: 口径(정의·범위)을 밝히고, 소스가 충돌하면 나열—억지로 합치지 않기
  3. SERP / 리다이렉트 페이지: 1차 출처로 취급하지 않기
  4. 소셜 포스트: 감성과 서사, 최종 사실 근거가 아님
  5. 팩트체크: 층위별 소수 쿼리 선호(출처 / 비교 / 대상)

빠른 시작

경로를 고르면 됩니다. 설치 진원은 GitHub뿐입니다(npx github:taxueseek/argo 또는 install.sh); 현재 권장 v2.8.5. npm install argo-search는 쓰지 마세요 — npm 레지스트리 사본은 비공식 낡은 v1.0.1(이 저장소가 아님, 기능 부족, 갱신 안 됨). 이 패키지는 private: true로 npm 오배포를 막습니다.

제로 설정으로 동작: API 키 없이도 무료 엔진 + 로컬 local_* 엔진이 돌고, 키 없는 엔진은 스킵됩니다(키가 있으면 보통 더 좋습니다).

옵션 1: 설치 스크립트 (장기 로컬 사용에 적합)

curl -fsSL https://raw.githubusercontent.com/taxueseek/argo/main/scripts/install.sh | bash

홈 경로 + Skill 링크 지정:

curl -fsSL https://raw.githubusercontent.com/taxueseek/argo/main/scripts/install.sh \
  | bash -s -- --home "$HOME/.local/share/argo" --link "$HOME/.claude/skills/argo"

확인:

python3 ~/.local/share/argo/scripts/search.py "贵州茅台股价" --json
python3 ~/.local/share/argo/scripts/search.py --list-engines

옵션 2: GitHub MCP (에이전트에 빠르게 붙이기)

Node.js 18+Python 3.10+ 필요. 한 번:

pip3 install pyyaml
npx -y github:taxueseek/argo

클라이언트 설정 (Claude Code / Cursor / Kimi 등):

{
  "mcpServers": {
    "argo": {
      "command": "npx",
      "args": ["-y", "github:taxueseek/argo"]
    }
  }
}

더 안정적·Node 불필요: 옵션 1로 설치 후 로컬 Python 지정:

{
  "mcpServers": {
    "argo": {
      "command": "python3",
      "args": ["/path/to/argo/scripts/mcp_server.py"]
    }
  }
}

비표준 Python 경로: export ARGO_PYTHON=/path/to/python3 (npx 진입점만 읽음).

DeepSeek Harness 한 줄 플러그인

DeepSeek Harness에는 두 가지 설치:

# A: mcp__argo__* 도구 12개 (메인 패키지 bundle, MCP 전량과 동일)
dsh plugin --profile web add "github:taxueseek/argo"

# B: 검색 도구 + wide_research 병렬 연구 오케스트레이션 (서브패키지)
dsh plugin --profile web add "github:taxueseek/argo#main&path:packages/dsh-plugin"

설치 후 dsh web을 재시작. 자세한 내용은 packages/dsh-plugin/.

옵션 3: 릴리스 tarball

Releases에서 argo-2.8.5.tar.gz 다운로드:

tar -xzf argo-2.8.5.tar.gz
cd argo-2.8.5
pip3 install pyyaml
python3 scripts/search.py "Python asyncio" --json
python3 scripts/mcp_server.py

옵션 4: git clone (개발 / 소스 패치)

git clone https://github.com/taxueseek/argo.git
cd argo
pip3 install pyyaml
bash scripts/install.sh --link ~/.claude/skills/argo   # optional
python3 scripts/search.py --list-engines

옵션 5: Skill 디렉터리 (심볼릭 링크, 단일 진원)

python3 scripts/link_source.py --to ~/.claude/skills/argo
python3 scripts/link_source.py --to ~/.agents/skills/argo

cp installs.local.yaml.example installs.local.yaml
python3 scripts/link_source.py
python3 scripts/link_source.py --check

옵션 6: Python 라이브러리

import sys
sys.path.insert(0, "/path/to/argo/scripts")
from search import super_search

result = super_search("Python asyncio", n=5, mode="fast")
for item in result["results"]:
    print(item["title"], item.get("credibility_fast"), item["url"])
# if bin/argo is on PATH
argo search "Python asyncio"
argo research "2026 mutual fund holdings structure"
argo evidence "a claim to verify"

플랫폼

플랫폼 연동 비고
Claude Code MCP / Skill 링크 npx 또는 mcp_server.py; link_source.py 가능
Kimi / Grok Build MCP Server 동일
Cursor / Cline / Continue MCP MCP 지원 IDE 플러그인
CLI search.py / bin/argo 스크립트, cron, 수동 디버그
Python 프로젝트 from search import super_search 라이브러리 호출

설치 후 점검

python3 --version          # 3.10+
python3 -c "import yaml; print('PyYAML OK')"
python3 -m pytest tests/test_unit.py -q   # optional
python3 scripts/search.py --list-engines

기능

기능 하는 일 진입점
통합 검색 route → recall → fuse → skim score search.py / argo_search
로컬 파일 검색 디스크 코드/노트/메모리 (오프라인) argo_local_search
로컬 텍스트 미리보기 화이트리스트 디렉터리 미리보기 (fail-closed) argo_local_read
재계산 제한 서브프로세스 수치 재계산 (기본 거부) argo_recompute
심층 연구 하위 질문, 다중 소스, 갭 힌트 research.py / argo_research
신뢰도 권위 / 밀도 / 시의성 / 교차 검증 evidence.py / argo_evidence
의도 명확화 다의어, 브랜드 충돌, 전략 힌트 clarify.py / argo_clarify
페이지 가져오기 HTTP 우선, 필요 시 브라우저 폴백 argo_fetch (mode=extract 구조 추출)
스크린샷 / PDF 페이지 캡처, 구조화 PDF 추출 argo_screenshot / argo_pdf
사이트 크롤 목록 페이지 배치 크롤 argo_crawl
소셜 / 감성 Weibo / Xiaohongshu / Bilibili / Reddit / X … argo_social_search

예산 모드

모드 적합한 경우 동작
fast 단순 Q, 속도 필요 무료 엔진 우선, 유료 re-rank 스킵
auto 일상 기본 비용 인식 품질/지출 트레이드오프
deep 연구, 조사 품질 우선, 엔진 더 허용
budget 할당량 타이트 쿼터 제어, 소진 시 저하

대략적인 능력 세트 (v2.8.5)

  • 로컬 데이터 융합 (v2.8.4 신규): 연구 작업 패키지에 file_inputs(로컬 1차 데이터, sha256/혈통 등기) + recompute(샌드박스 재계산); dossier가 local_sources 출력
  • MCP 한 줄 주입 (v2.8.4 신규): argo mcp inject로 Claude Code / Cursor / Windsurf / Codex / OpenCode / Cline (원자 쓰기 + 백업 + 가역; 진원 mcp/clients.yaml)
  • 구조화 검색 강화 (v2.8.4 신규): 쿼리 정규화 + 변체 + 복잡도 게이트; 소셜 문법 우선; TF-IDF는 중국어 엔진을 버린 뒤에도 후보를 봄; --include-local
  • Keenable (v2.8.4 신규): 일반 웹 검색 엔진 추가 (L1 선언적 HTTP, 무료 체험, ARGO_KEENABLE_API_KEY)
  • 약 150+ 소스, 70+ 도메인: 일반 웹 + 금융 / 매크로 / 영화 / 스포츠 / 지리 / 조직 / 미디어 / 화학 / 학술 / 코드 (진원: config.yaml)
  • MCP 도구 12개: search, research, evidence, clarify, fetch, screenshot, PDF, social, local files, crawl, local preview, recompute
  • 다국어 검색: 중국어, 영어, 일본어, 한국어, 키릴, 태국어, 아랍어, 히브리어, 그리스어, 데바나가리, …; 라우팅과 엔진 파라미터가 언어를 따름; 비중국어 쿼리는 중국어 전용 소스 회피 (Zhihu / Sogou WeChat / A주 스냅샷 등)
  • 수직 복구 게이트: 빈 결과 복구 시 영화·스포츠에 pypi / npm / 속보 등이 「새지」 않음
  • 일상은 빠르게, 연구는 넓게: engine_policy 티어—일상 콤보는 타이트, deep / research는 롱테일 개방

엔진과 라우팅

설정에는 현재 약 150+ 소스와 70+ 도메인이 있습니다 (config.yaml, --list-engines 참고).

직접·수직 (발췌)

엔진 시나리오 비용 성향
anysearch / duckduckgo 일반 / 기술 free
sina_quote / tencent_quote / eastmoney A주 시세 / 자금 흐름 free
finviz / seeking_alpha 미국·해외 금융 depends
imdb / itunes / thesportsdb 영화 / 음악 / 스포츠 mostly free
local_openstreetmap / wikidata / wikipedia 지리 / 조직 / 백과 free
arxiv / semantic_scholar / openalex 학술 mostly free
pubchem / gbif / rfc_editor 화학 / 종 / 표준 free
github / stackoverflow / pypi / npm 코드·패키지 depends
byted / bocha / metaso / octen 중국 웹 / AI 검색 API / low cost
zhihu / wechat_sogou 중국 여론 / WeChat API / free
tavily / felo / exa 국제 / 시맨틱 paid or quota
twitter / reddit / xiaohongshu / bilibili / weibo 소셜 UGC free (some need login)

로컬 제로 비용 레이어 (local_*)

별도 SearXNG 서비스 불필요. 메인 경로는 프로세스 내 HTML / RSS / JSON 파싱 (local_bing, local_sogou, local_google, local_arxiv, …). 다국어 쿼리에서는 라우팅이 엔진 언어 파라미터를 재작성(예: Bing setlang)하고 RRF로 융합합니다.


예시

금융

python3 scripts/search.py "贵州茅台股价" --explain
# typical: stock_query → quote snapshot sources

학술

python3 scripts/search.py "transformer attention mechanism paper" --json
# domain often academic; combo includes arxiv etc.

연구와 검증

python3 scripts/research.py "2026 mutual fund Q2 holdings structure" --depth deep --json

python3 scripts/search.py "same query" --json | \
  python3 scripts/evidence.py "same query" --stdin --json

MCP 도구 (12)

도구 용도
argo_search 통합 검색
argo_local_search 로컬 파일 (오프라인)
argo_local_read 화이트리스트 로컬 텍스트 미리보기 (fail-closed)
argo_recompute 제한 서브프로세스 재계산 (기본 거부, 인가 필요)
argo_research 심층 연구 (소셜 감성 모드 포함)
argo_evidence 신뢰도 점수
argo_clarify 의도 명확화
argo_fetch 스마트 fetch (mode=extract 구조 추출)
argo_crawl 사이트 크롤
argo_screenshot 페이지 스크린샷
argo_pdf PDF 추출
argo_social_search 멀티 플랫폼 소셜 (mode=sentiment)

설치와 설정

요구 사항

항목 요구
Python 3.10+ (CLI + MCP 코어)
의존성 pip install pyyaml (필수 의존성 하나)
Node.js npx 진입에만 필요, 18+
SearXNG 불필요 (내장 로컬 엔진)

API 키 (모두 선택)

키가 없으면 해당 엔진 스킵, 무료 엔진이 버팀. 환경 변수 사용—실제 키를 커밋하거나 이슈에 붙이지 마세요.

# recommended (better quality)
export TAVILY_API_KEY="your_key"
export BOCHA_API_KEY="your_key"
export METASO_API_KEY="your_key"
export ZHIHU_ACCESS_SECRET="your_key"

# optional
export BRAVE_API_KEY="your_key"
export FELO_API_KEY="your_key"
export GITHUB_TOKEN="your_key"
export WEB_SEARCH_API_KEY="your_key"
export ANYSEARCH_API_KEY="your_key"
export OCTEN_API_KEY="your_key"
export ARGO_KEENABLE_API_KEY="your_key"   # 선택; Keenable 무료 체험

config.yaml에는 {ENV_NAME} 플레이스홀더만—git에 평문 시크릿 없음.

캐시

기본 SQLite 경로는 config.yamlcache.db_path (보통 ~/.cache/unified-search/cache.db).

유형 대략 TTL
Finance ~5 min
News / realtime ~10–15 min
General ~1 hour
Research / evergreen ~2–24 hours
Empty results very short (avoid freezing “no hits”)

FAQ

API 키 없이도 되나요?
네. 많은 로컬 무료 엔진과 무료 API; 키 없는 경로가 자동입니다.

설치 스크립트 vs npx?
스크립트: 고정 로컬 설치, 설정, Skill 링크. npx: MCP를 빠르게 붙임. 같은 Python 코어.

엔진 확인은?
python3 scripts/search.py --list-engines, 또는 --explain 추가.

저장소에 코드 사본이 여러 개?
아니요. link_source.py로 단일 소스 + 심볼릭 링크를 권장, rsync 복제 지양.


CLI 플래그

python3 scripts/search.py [options] query

  --engine, -e       engine, default auto
  --max-results, -n  count, default 5
  --depth, -d        fast | balanced | deep
  --mode             fast | auto | deep | budget
  --no-cache         skip cache
  --explain          print routing explanation
  --json             JSON output
  --timeout, -t      timeout seconds
  --list-engines     list engines

설계 트레이드오프

  1. 에이전트 흡수 우선, 링크 개수 차선.
  2. 무료·로컬 우선, 유료는 선택적 향상.
  3. 실패는 관측 가능: empty / timeout / breaker에 라벨—조용히 삼키지 않음.
  4. 설정 주도 엔진; config.yaml이 단일 진원.
  5. 단일 소스 설치: 링크 엔트리, rsync 복제 금지.
  6. 소셜은 진리 라이브러리가 아님; 확장·감성에는 좋으나 유일한 사실 근거는 아님.

잘 맞는 경우

  • Claude Code / Grok Build / Codex / Kimi 에이전트의 검색 백엔드
  • 다국어·다도메인 Q&A: CJK + EN + 금융 / 영화 / 스포츠 / 학술 / 코드
  • 재현 가능·캐시 가능 검색이 필요한 스크립트와 파이프라인
  • 공개 금융 / 엔티티 데이터의 팩트체크와 다중 소스 비교

단독 솔루션으로 덜 적합한 경우: 플랫폼 네이티브 인게이지먼트 랭킹, 또는 장기 max-recall 애그리게이터(내장 로컬 엔진이 외부 SearXNG 메인 경로를 대체).


트리 (요약)

argo/
├── README.md                # Chinese (default)
├── README.en.md             # English
├── README.ja.md             # Japanese
├── README.ko.md             # Korean
├── README.es.md             # Spanish
├── SKILL.md
├── package.json             # npx entry
├── bin/argo.js              # Node MCP launcher
├── bin/argo                 # Python CLI
├── config.yaml              # engines & domains (source of truth)
├── assets/readme/           # README visuals
├── backends/
├── mcp/                     # 다중 클라이언트 MCP 주입 진원 (clients.yaml)
├── scripts/                 # search / research / mcp / install …
├── sub-skills/local-search/
├── sub-skills/ego-search/      # 로그인 상태 전문 검색 (기본 꺼짐)
├── tests/
└── docs/

최근 업데이트

v2.8.5: DSH 플러그인 도구 네이티브화 + MCP 기본 끔 + Windows 호환

  • 플러그인 도구 네이티브화: argo_search / argo_fetch가 1급 네이티브 도구로 등록되어 MCP 연결 없이 기본 사용 가능; 스키마는 단일 진원 mcp_tools.py에서 자동 생성되어 양쪽 모두 드리프트 없음; argo_research를 제외한 13개 도구를 nativeTools로 수시 활성화 가능
  • MCP 기본 끔: 3가지 접속 형태(수요 시 마운트 MCP / 기본 진입 네이티브 도구 / web_search seam); 평소 상주 토큰 비용 0, 14개 도구 전체가 필요하면 profile patch 한 장으로 엶
  • Windows 호환(커뮤니티 PR #11): 임시 경로는 시스템 temp, GBK 인코딩 수정, python3/python 런타임 해석, symlink는 권한 없으면 junction으로 폴백, PowerShell 일괄 설치 install.ps1 추가
  • 쿼터 자가 치유: HTTP 200에 숨은 원격 쿼터 고갈을 감지하고, 라우팅이 해당 엔진을 제외해 백업 소스로 전환, 다음 쿼터 주기에 자동 복귀
  • 페치 전역 deadline: ARGO_FETCH_DEADLINE_S(기본 60s)로 폴백 사슬 총 시간 상한; 429/503 정지 시그널 존중; tinyfish 렌더링 + .md 변형 프로브

v2.8.4: 로컬 데이터 융합 + 원 커맨드 MCP 연결

  • 심층 연구가 로컬 데이터를 먹을 수 있음: 작업 패키지에 file_inputs(1차 CSV / XLSX / 문헌; 해시는 등기, 내용은 넣지 않음) + recompute(샌드박스 재계산; 불일치는 플래그)
  • MCP 연결을 더 이상 손으로 안 고침: argo mcp inject가 Claude Code / Cursor / Windsurf / Codex / OpenCode / Cline에 기록(원자 쓰기 + 백업 + 되돌리기)
  • 간단한 쿼리는 싸게 유지: 정규화 + 복잡도 게이트 + 소셜/플랫폼 문법 우선 + 중국어 엔진을 버려도 후보를 계속 봄
  • Keenable을 무료 체험 웹 검색 소스로 추가
  • 보안: recompute가 외부 프로세스 출망을 차단; 호스트 경로는 설치 인지

자세한 내용은 아래 표와 각 버전 릴리스 노트


변경 이력

버전 비고
v2.8.5 DSH 플러그인 도구 네이티브화 + MCP 기본 끔 + Windows 호환 + 쿼터 자가 치유 + 페치 deadline: argo_search/argo_fetch가 1급 네이티브 도구로 기본 사용 가능(CLI 단발은 MCP와 동일 엔진·가드, 스키마 단일 진원 + 드리프트 게이트); 3가지 형태 접속, MCP는 수요 시 마운트 기본 끔; Windows 호환(temp 경로 / GBK / 인터프리터 해석 / junction / install.ps1, PR #11); 쿼터 자가 치유 루프(200 업무 오류 봉투 감지 + 라우트 제외 + 주기 자가 치유); 페치 전역 deadline(ARGO_FETCH_DEADLINE_S) + tinyfish 렌더링 + .md 변형 프로브; 핫리로드 env와 상태 디렉터리 단일 진원. 릴리스 노트
v2.8.4 로컬 데이터 융합 + 다중 클라이언트 MCP 주입 + 구조화 검색 + Keenable: 연구 L1 로컬 1차 데이터(file_inputs + recompute + local_sources); argo mcp inject(선언적 mcp/clients.yaml); 쿼리 정규화 / 변체 / 복잡도 게이트 / 소셜 문법 우선 / TF-IDF 수정 / --include-local; Keenable(무료 체험); 보안 강화. 릴리스 노트
v2.8.3 다국어 라우팅 수정 + 프로세스 내 anysearch + weighted RRF: ja/ko가 대상 언어를 반환; 독/불/서/이 anysearch; weakest-link 다운웨이트(논문 2508.01405). 릴리스 노트
v2.8.2 Windows + 증거 의미 통일: npm os 제한 제거; GBK 크래시 대비 UTF-8; 메인 패키지 dsh.bundle; wide_research 품질 게이트. 릴리스 노트
v2.8.0 증거 루프 + 구직 v3 + 날씨 쌍소스: fetch_required / --verify; argo job; wttr.in + Open-Meteo; Parallel / You.com. 릴리스 노트
v2.7.3 엔진 층 HttpClient; TF-IDF로 수직 25개 활성화; 70 도메인 TTL; 수직 중영. 릴리스 노트
v2.7.2 로그인 상태 전문 검색(ego-search, 기본 꺼짐); 한일 쿼리가 중국어 엔진에 섞이지 않음. 릴리스 노트
v2.7.1 SSRF 강화 + 라우팅 헬스 의미 수정. 릴리스 노트
v2.6.0 다국어 검색 (detect / engine params / cross-lang fallback); film·sports·geo·org·media 수직; recovery 오염 방지; 능력 패밀리 + 매트릭스 회귀; ~120+ 소스. 릴리스 노트
v2.5.1 금융/매크로/화학 답형 소스 강화; 엔진 티어 + combo 예산; v2.5.1 notes
v2.5.0 설치 스크립트 + npx; rewrite와 라우팅 분리; hot-path 캐시; compact MCP
v2.4.0 저점수 라우트 폴백 + 소셜 오라우트 필터; 캐시 depth / soft hits; breakers & negative cache; engine_outcomes
v2.2–v2.3 2단계 증거, 중국 소스 표, content_signals, fetch 스택, 엔진 확장
v2.1 소셜 엔진 레이어 (멀티 플랫폼 UGC)
v1.x 통합 이름 Argo; 다중 엔진 라우팅 + 이중 캐시

기여

Issue와 PR 환영합니다. 라우팅이나 증거 로직을 바꿀 때 테스트를 추가해 주세요:

python3 -m pytest tests/test_unit.py tests/test_multilingual.py -q
python3 scripts/regression_p0p1.py --offline
python3 scripts/matrix_search_eval.py --offline
python3 scripts/ab_eval_p0p1.py   # optional, online

커밋 전: 실제 API 키, 본기 절대 경로, 계정 쿠키 없음. 로컬 Skill 경로는 installs.local.yaml(gitignored)에.

License

MIT License © 2026 taxueseek

README made with beautify-github-readme


좋은 검색은 더 많이 보는 것이 아니라, 자신 있게 결론 내리고, 아직 결론 내리면 안 될 때를 아는 것입니다.