본문으로 건너뛰기

Stigmergy로 만드는 감사 가능한 팀 지식 저장소

Stigmergy가 Slack과 에이전트의 작업 흔적을 ACL 기반 Git wiki로 축적합니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Stigmergy는 Slack, MCP bridge, backoffice에서 들어온 원본을 하나의 durable queue로 모으고 librarian agent가 Git과 Markdown 기반 팀 wiki에 정리하는 시스템입니다. 하나의 serialized writer가 source를 immutable하게 보존한 뒤 FilingPlan에 따라 note와 concept를 갱신하며, 각 작업에 commit과 change record를 남깁니다. ACL은 읽기뿐 아니라 지식 쓰기 전파에도 적용되어 제한된 자료가 공개 페이지를 형성하지 못하게 하고, ask는 visibility 범위 안에서 인용을 확인한 답변만 반환합니다. 실제 Postgres와 Git을 사용하는 1,100개 이상의 테스트와 2026-08-24 평가에서 Recall@5, honesty, groundedness 모두 1.00을 기록했지만, 모델 구성과 운영 배포에는 OpenRouter와 여러 서비스용 비밀 설정이 필요합니다.

섹션별 상세

01
Stigmergy는 여러 사람과 에이전트가 작업 중 남긴 기록을 하나의 지식 흐름으로 모으는 팀용 wiki 시스템입니다. Slack의 :brain: 반응, Claude Code나 Codex의 MCP 요청, backoffice 입력이 같은 CaptureEnvelope으로 정규화되어 durable queue에 들어갑니다. 이 구조는 개인용 wiki보다 필요한 identity, visibility, concurrency, 감사 기록을 추가하면서도 원본과 현재 지식을 분리합니다.
02
수집된 입력은 leased·idempotent queue를 거쳐 하나의 serialized writer가 처리합니다. writer는 원본 바이트로 immutable source 페이지를 만들고 librarian에게 FilingPlan을 받아 note나 concept를 생성·수정·통합하며, 모든 게이트가 통과될 때만 한 번의 commit과 change record를 남깁니다. 커밋 직후 장애가 발생해도 commit SHA로 상태를 재조정하므로 동일 작업을 위한 두 번째 commit을 만들지 않습니다.
03
지식 저장소의 현재 기준은 Git과 Markdown이고 Postgres는 운영 상태와 재생성 가능한 검색 인덱스만 맡습니다. note와 concept에는 maturity, ACL, entity anchor, source 목록이 들어가며 entity 페이지에는 opaque ID와 범위가 지정된 이름 주장만 둡니다. 같은 사실을 뒷받침하는 신뢰할 만한 자료가 충돌하면 librarian은 가장 좁은 공개 범위의 페이지에 날짜와 출처가 있는 unresolved contradiction marker를 유지합니다.
04
읽기 경로는 search_brain, read_page, ask, list_entities, describe_entity의 다섯 MCP 도구와 Slack의 @brain 인터페이스로 통일됩니다. 검색은 lexical과 vector 방식을 결합하고 ACL로 결과를 걸러내며, ask는 인용을 코드로 확인한 답변이나 정직한 거절만 반환합니다. 제한된 캡처는 제한된 companion page로만 흘러가고 공개 페이지가 더 좁은 권한의 증거로 다시 쓰이지 않는 점이 핵심 보안 제약입니다.
bash
uv tool install git+https://github.com/sturlese/stigmergy.git
export STIGMERGY_TOKEN=""

Stigmergy bridge를 설치하고 인증 토큰 환경 변수를 설정합니다.

json
{
  "mcpServers": {
    "stigmergy": {
      "command": "stigmergy-bridge",
      "args": ["--url", "https://stigmergy.example.com"],
      "env": {
        "STIGMERGY_TOKEN": "${STIGMERGY_TOKEN}",
        "STIGMERGY_GOOGLE_CLIENT_SECRETS": "${STIGMERGY_GOOGLE_CLIENT_SECRETS:-}"
      }
    }
  }
}

Claude Code가 Stigmergy MCP bridge를 통해 배포 환경의 읽기 도구와 로컬 파일 수집 기능을 사용하도록 설정합니다.

toml
[mcp_servers.stigmergy]
command = "stigmergy-bridge"
args = ["--url", "https://stigmergy.example.com"]
env_vars = ["STIGMERGY_TOKEN", "STIGMERGY_GOOGLE_CLIENT_SECRETS"]
required = true

Codex 설정에서 Stigmergy MCP server를 필수 서버로 등록합니다.

05
모델 구성은 OPENROUTER_API_KEY 하나와 닫힌 allowlist를 사용하며, filing과 semantic repair에는 deepseek/deepseek-v4-flash, cited answer에는 z-ai/glm-5.2, embedding에는 qwen/qwen3-embedding-8b, OCR에는 qwen/qwen3-vl-8b-instruct를 지정합니다. 테스트 계약은 실제 Postgres와 Git을 사용하는 1,100개 이상의 keyless 테스트, fake model, 75% coverage gate로 구성됩니다. 2026-08-24 평가에서 15개 질문과 9개 ACL 필터 질문의 Retrieval Recall@5, answer honesty, answer groundedness가 모두 1.00으로 기록됐습니다.
06
운영 배포는 하나의 이미지와 app, worker, slack 세 Fly process group으로 나뉘며 worker만 지식 저장소에 쓰는 주체입니다. 로컬 bridge는 파일과 private Google Drive 문서를 클라우드에 보내기 전에 바이트를 확보하고, presigned URL로 업로드하며 Google 자격 증명은 클라우드에 전달하지 않습니다. nightly gardener와 전체 색인이 같은 게이트를 재사용해 사람의 별도 to-do list 없이 손상된 corpus와 인덱스 수렴 상태를 복구합니다.

용어 해설

스티머지(Stigmergy)
개미처럼 여러 주체가 서로 직접 대화하지 않고 환경에 남긴 흔적을 통해 협업하는 방식입니다. Stigmergy에서는 Slack 반응이나 에이전트 작업 완료 같은 기록이 흔적이 되고, librarian agent가 이를 Git과 Markdown 기반 지식 페이지로 정리합니다. 직접적인 메시지 조율 없이도 공유 지식이 갱신되는 구조가 핵심입니다.
CaptureEnvelope
서로 다른 입력 어댑터가 수집한 자료를 동일한 형식으로 전달하는 내부 객체입니다. Slack, MCP bridge, backoffice가 원본 바이트와 행위자 정보, 접근 범위 등을 하나의 봉투로 정규화하면 이후 queue와 writer가 입력 종류를 구별하지 않고 처리할 수 있습니다. 어댑터 확장과 중복 처리 방지에 필요한 경계입니다.
FilingPlan
librarian이 수집된 원본을 어떤 note나 concept에 반영할지 결정하는 계획입니다. 페이지 생성·재작성·통합·삭제·모순 추가 또는 아무 페이지도 변경하지 않는 선택을 담으며, writer는 모든 게이트가 통과된 경우에만 계획을 Git 변경으로 실행합니다. 원본 source 페이지는 이 계획으로 수정되지 않습니다.
하이브리드 검색(Hybrid Search)
어휘 검색과 벡터 검색을 함께 사용해 지식 저장소에서 관련 페이지를 찾는 방식입니다. Stigmergy의 search_brain은 두 검색 결과를 결합하고 호출자의 visibility 정책을 적용해 읽을 수 있는 결과만 반환합니다. ask는 이렇게 얻은 자료를 바탕으로 인용이 확인된 답변을 생성합니다.
접근 제어 목록(ACL)
페이지나 캡처를 읽을 수 있는 그룹을 지정하는 권한 목록입니다. Stigmergy는 읽기뿐 아니라 쓰기 전파에도 ACL을 적용해 제한된 증거가 더 넓은 audience의 페이지 형성에 사용되지 않도록 막습니다. 권한이 없는 항목은 외부에서 존재 여부까지 구분되지 않습니다.
pgvector
Postgres 안에서 벡터를 저장하고 유사도 검색에 활용하는 확장 기능입니다. Stigmergy의 로컬 구동 절차는 Postgres와 pgvector를 함께 올린 뒤 지식 저장소를 색인하며, Postgres는 원본 지식이 아니라 재생성 가능한 검색 인덱스와 운영 상태를 맡습니다. Git과 Markdown이 현재 지식의 기준으로 남습니다.

기술

  • Stigmergy
  • Claude Code
  • Codex
  • MCP
  • Slack
  • Postgres
  • pgvector
  • MinIO
  • Git
  • Markdown
  • Google Drive
  • OpenRouter
  • deepseek/deepseek-v4-flash
  • z-ai/glm-5.2
  • qwen/qwen3-embedding-8b
  • qwen/qwen3-vl-8b-instruct
  • Python 3.12+
  • Docker
  • Fly

활용 사례

  • Slack 스레드에서 :brain: 반응으로 팀 지식과 첨부 파일을 캡처하는 업무 기록
  • Claude Code나 Codex가 작업을 마친 뒤 결론을 MCP를 통해 팀 wiki에 저장하는 자동화
  • private Google Drive 문서를 로컬에서 확보하고 OCR과 문서 추출을 거쳐 지식 저장소에 편입하는 수집 흐름
  • ACL 범위 안에서 의사결정과 고객 상태를 검색하고 출처가 확인된 답변을 받는 질의
  • 서로 다른 자료의 갱신일과 금액이 충돌할 때 양쪽 주장을 보존하는 감사 가능한 지식 관리

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 25.수집 2026. 08. 25.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.