Nexus 문서

MCP, Hosted API, 그리고 AMCP 표면

Nexus는 AI 에이전트를 위한 휴대형 메모리 레이어입니다. 이 페이지는 현재 레퍼런스 스택 전체를 다룹니다. 호스팅 설정, Local Lite 활성화, MCP 설치, AMCP 엔드포인트, export/import, 런타임 검증까지 포함합니다.

Hosted API Base

https://nexus-api-production-4177.up.railway.app

MCP 서버 패키지

@nunchiai/[email protected]+

설치 지원 범위

16개 클라이언트 (자동 14 + 수동 2)

1) 지금 Nexus가 제공하는 것

호스팅 메모리 API: 현재 AMCP 표면에서 remember, recall, sessions, export/import, delete를 사용할 수 있습니다.

MCP 서버: 지원 클라이언트에 대해 원커맨드 설정이 가능하며, Local Lite와 호스팅 모드가 명확히 분리되어 있습니다.

레퍼런스 구현: Nexus는 범용 에이전트 제품이 아니라 메모리 레이어이자 레퍼런스 서버로 위치합니다.

검증: 클라이언트 설정 지원, MCP 런타임 검증, 호스팅 게이트웨이/API 검증은 서로 별도로 추적됩니다.

2) 시작 전에

  • 1. 호스팅 Nexus는 항상 /settings/api-keys 에서 API 키를 발급하는 것으로 시작합니다.
  • 2. Node.js 18+를 사용하십시오. (npx 필요)
  • 3. 설정 전에 Codex, Claude, Cursor, Windsurf, VS Code, Zed 같은 실행 중인 에이전트 앱을 모두 완전히 종료하십시오.
  • 4. 설정이 끝난 뒤에만 에이전트를 다시 실행하십시오.
  • 5. 현재 정책상 Trial Cloud, Nexus Free, Nexus Pro는 활성 API 키를 1개만 허용합니다. 새 키를 발급하기 전에 기존 키를 revoke 또는 delete 하십시오.

3) 모드 선택

발급된 API 키와 함께 클라우드 메모리를 쓰고 싶다면 hosted 모드를 사용하십시오. 1회 디바이스 활성화로 무료 로컬 SQLite 메모리를 쓰고 싶다면 Nexus Free를 선택하십시오.

권장 Local Lite 흐름
# local sqlite memory
npx -y @nunchiai/[email protected] init --all --local --yes
npx -y @nunchiai/[email protected] activate --key sk_write_your_key --gateway-url https://gateway.nunchiai.com

Local Lite는 메모리를 로컬 SQLite에 보관하고, 발급한 키는 서명된 라이선스를 가져올 때 한 번만 사용합니다.

새로운 Local Lite 활성화는 처음 activate --key를 실행한 디바이스에 묶입니다. 같은 API 키로 다른 디바이스를 추가 활성화할 수 없습니다.

Trial Cloud, Nexus Pro, Nunchi Team에서는 --local 대신 --key를 주는 일반 init을 사용하십시오.

권장 hosted 흐름
# hosted memory
npx -y @nunchiai/[email protected] init --client codex,gemini-cli --key sk_write_your_key --gateway-url https://gateway.nunchiai.com --yes
npx -y @nunchiai/[email protected] init --list

Codex는 MCP를 통해 Nexus를 사용합니다. Codex에는 OPENAI_BASE_URL을 설정하지 마십시오.

4) AMCP API 표면

현재 공개 방향은 기존 Nexus 메모리 시스템 위에 놓인 AMCP 표면입니다. 지원 클라이언트를 통해 MCP를 사용할 수도 있고, 호스팅 API를 직접 호출할 수도 있습니다.

  • POST /v1/amcp/remember
  • POST /v1/amcp/recall
  • GET /v1/amcp/sessions
  • POST /v1/amcp/export
  • POST /v1/amcp/import
  • DELETE /v1/amcp/memories/:id

하위에는 여전히 /v1/memory/* 경로가 존재합니다. 기존 /v1/amp/* 경로는 호환성 alias로만 남아 있습니다. 정식 공개 프로토콜 표면은 /v1/amcp/* 입니다.

5) MCP 워크플로

Nexus를 공유 메모리 레이어로 쓰면서도 클라이언트 간 코딩 규칙을 맞춰두는 가장 빠른 방법입니다.

정제된 규칙 파일을 Nexus로 동기화
# push local rule files (.cursorrules, CLAUDE.md, AGENTS.md, .cursor/rules/*, ...)
npx -y @nunchiai/nexus-mcp sync

# preview only (no write)
npx -y @nunchiai/nexus-mcp sync --dry-run

sync는 각 규칙 파일을 convention 메모리 atom으로 저장합니다. sync 후에는 어떤 연결된 에이전트에서도 이 규칙을 recall/generate에 적용할 수 있습니다.

6) 핵심 사용 사례

세션이 바뀌거나, 에이전트가 바뀌거나, 나중에 같은 프로젝트로 다시 돌아올 때 Nexus의 가치가 가장 커집니다. 같은 결정, 실패, 규칙을 다시 설명하는 대신, 다음 에이전트에게 먼저 recall하라고 지시하면 됩니다.

특히 이런 순간에 효과가 큽니다:

  • 1. 오늘 Codex를 닫고 내일 Claude Code에서 이어서 작업할 때.
  • 2. 한 에이전트에서 빌링 이슈를 디버깅하고, 다른 에이전트에서 구현을 계속할 때.
  • 3. 긴 스레드가 끝나고 컨텍스트가 적은 새 세션이 시작될 때.
  • 4. 다음 에이전트가 프로젝트 특화 규칙을 반복 설명 없이 이어받아야 할 때.

결정을 명시적으로 저장하기

제품, 빌링, 아키텍처, 인프라 관련 결정을 내린 뒤에는 에이전트에게 그것을 Nexus에 저장하라고 지시하십시오. 나중에 같은 선택을 다시 발견할 필요가 없어집니다.

예시 프롬프트
이 내용을 Nexus에 decision으로 저장해:
"Codex는 이제 0.4.8 설정 경로를 따른다. Gateway passthrough는 아직 기본값이 아니다."

버그 원인과 해결을 저장하기

근본 원인을 찾았다면 한 번만 error 메모리로 저장해 두십시오. 이후 세션은 같은 조사를 반복하는 대신 그것을 recall할 수 있습니다.

예시 프롬프트
이 내용을 Nexus에 error로 저장해:
"Public plan login 404는 /en/en/login에서 발생했다. Locale이 두 번 prefix 되고 있었다."

세션 시작 시 프로젝트 문맥 불러오기

새 에이전트 세션이 시작될 때는 작업을 계속하기 전에 최근 결정, 제약, 규칙을 먼저 불러오라고 하십시오.

예시 프롬프트
계속 진행하기 전에 billing과 deployment에 대한 최근 Nexus 문맥을 불러와.

재사용 가능한 규칙과 관례 저장하기

파일 기반 규칙은 sync로 올리고, 파일에 적혀 있지 않은 작은 관례는 에이전트에게 직접 기억시키십시오.

예시 프롬프트
이 내용을 Nexus에 convention으로 저장해:
"활성 플랜 카드에는 Current Plan, 비활성 유료 티어에는 Choose Plan을 사용한다."

7) 에이전트에게 저장을 지시하는 방법

가장 단순한 패턴은 에이전트에게 Nexus에 저장하라고 직접 말하는 것입니다. 사용하는 클라이언트가 노출하지 않는 한, raw MCP 함수 문법을 직접 입력할 필요는 없습니다.

이 방식은 세션을 끝내기 직전, 다른 에이전트로 전환하기 직전, 동료에게 작업을 넘기기 직전에 특히 유용합니다.

좋은 예시는 다음과 같습니다:

  • 이 내용을 Nexus에 decision으로 저장해.
  • 이 버그 원인을 Nexus에 기억해 둬.
  • 이 내용을 Nexus에 프로젝트 문맥으로 저장해.
  • 끝내기 전에 최종 수정 사항을 Nexus에 저장해.

에이전트가 제대로 연결되어 있다면, 당신 대신 nexus_remember를 실행해야 합니다.

8) 세션 핸드오프 패턴

세션을 끝내기 전에

에이전트에게 결과, 핵심 결정, 주요 미해결 리스크를 저장하라고 하십시오. 그러면 다음 세션이 깔끔한 체크포인트에서 시작할 수 있습니다.

세션 종료 프롬프트
끝내기 전에, 최종 수정 내용과 그 이유, 남아 있는 리스크를 Nexus에 저장해.

다음 세션 시작 시

다음 에이전트에게 먼저 최근 Nexus 문맥을 recall하라고 하십시오. Codex에서 Cursor로 바꿨든, Claude Code에서 Gemini CLI로 바꿨든, 그냥 새 세션을 시작했든 동일하게 적용됩니다.

세션 시작 프롬프트
계속하기 전에 이 프로젝트의 최근 Nexus 문맥을 먼저 recall해. 결정, 오류, 미해결 항목에 집중해.

9) 비대화형 명령

비대화형 명령
# local_lite: configure all detected clients for local SQLite
npx -y @nunchiai/[email protected] init --all --local --yes
npx -y @nunchiai/[email protected] activate --key sk_write_your_key --gateway-url https://gateway.nunchiai.com

# cloud tiers (trial_cloud / cloud_pro / team): configure selected clients only
npx -y @nunchiai/[email protected] init --client codex,cursor,gemini-cli --key sk_write_your_key --gateway-url https://gateway.nunchiai.com --yes

# inspect detection only
npx -y @nunchiai/[email protected] init --list

# preview changes without writing files
npx -y @nunchiai/[email protected] init --all --local --dry-run

# remove nexus-mcp config from all clients
npx -y @nunchiai/[email protected] init --remove --all --yes

10) API 키와 로컬 활성화의 차이

Local Lite (무료 단일 디바이스 모드): npx -y @nunchiai/[email protected] init --all --local --yes를 실행한 뒤, npx -y @nunchiai/[email protected] activate --key sk_write_... --gateway-url https://nexus-api-production-4177.up.railway.app 를 실행하십시오.

클라우드 티어: Codex를 포함한 연결된 MCP 클라이언트에 대해 init에 --key sk_write_...를 넘기십시오.

현재 정책상 Trial Cloud, Nexus Free, Nexus Pro는 활성 API 키를 1개만 허용합니다. 다시 발급하기 전에 현재 키를 revoke 또는 delete 하십시오.

Local Lite는 서명된 라이선스를 ~/.nexus/license.json 에 저장합니다. Cloud init은 재사용 가능한 값을 ~/.nexus.env 에 저장합니다.

Local Lite는 서명된 라이선스를 첫 활성화 디바이스의 fingerprint에 묶습니다. 디바이스를 옮기려면 /settings/api-keys 에서 기존 키를 삭제하고 새 키를 발급한 뒤 새 디바이스에서 다시 activate 하십시오.

Local Lite의 검색 엔진: Local Lite는 로컬 임베딩 모델을 돌리지 않습니다. 로컬 SQLite FTS 검색과 경량 점수를 사용합니다. 서버 측 임베딩과 벡터 검색은 cloud memory 모드에서 제공됩니다.

11) 지원 에이전트

클라이언트설정 방식비고
Claude Code자동claude mcp add/remove 명령
Claude Desktop자동mcpServers JSON
Cursor자동mcpServers JSON
Windsurf자동mcpServers JSON
Cline자동mcpServers JSON
Roo Code자동mcpServers JSON
Kilo Code (IDE)자동mcpServers JSON
Kilo Code (CLI)자동mcp JSON key format
OpenCode자동mcp JSON key format
Gemini CLI자동.gemini/settings.json 또는 ~/.gemini/settings.json
Codex자동TOML mcp_servers 형식
VS Code + Copilot자동mcp.servers JSON 형식
Amazon Q CLI자동mcpServers JSON
Zed자동context_servers JSON 형식
Antigravity수동User/mcp.json; 현재 데스크톱 빌드에서 MCP_SERVER_INIT_ERROR가 날 수 있음
JetBrains IDEs수동설정에서 Claude로부터 Import

12) 런타임 검증 상태

설정 지원과 런타임 검증은 다릅니다. 아래 표는 현재 실제로 테스트된 상태를 반영합니다.

클라이언트설정 지원MCP 런타임Gateway passthrough
Codex자동MCP 검증 완료미검증
Claude Code자동MCP 검증 완료미검증
Cursor자동MCP 검증 완료미검증
Claude Desktop자동Connected 로그 검증 완료미검증
Windsurf자동Connected 로그 검증 완료미검증
Kilo Code (CLI)자동MCP 검증 완료미검증
OpenCode자동MCP 검증 완료미검증
Gemini CLI자동MCP 연결 확인됨; 로컬 확장/훅이 간섭할 수 있음미검증
Kilo Code (IDE)자동설정은 기록됨; 런타임 미검증미검증
VS Code + Copilot자동설정은 기록됨; 런타임 미검증미검증
Zed자동설정은 기록됨; 런타임 미검증미검증
Antigravity수동현재 데스크톱 빌드에서 init 오류 관찰됨미지원
JetBrains IDEs수동Import 흐름만 지원; 런타임 미검증미검증

13) 수동 설정 (Antigravity, JetBrains)

Antigravity

Nexus MCP를 수동으로 추가하십시오. 저장되는 설정 경로는 ~/Library/Application Support/Antigravity/User/mcp.json 입니다.

  • 1. command: npx
  • 2. args: -y @nunchiai/nexus-mcp
  • 3. Local Lite: NEXUS_STORAGE=local
  • 4. Cloud 모드에서만: NEXUS_API_URL=https://nexus-api-production-4177.up.railway.app 그리고 NEXUS_API_KEY=발급한 키
  • 5. NEXUS_AGENT_NAME: antigravity

현재 데스크톱 빌드에서는 서드파티 MCP init이 MCP_SERVER_INIT_ERROR로 실패할 수 있습니다. 의존하기 전에 도구 가시성을 직접 확인하십시오.

JetBrains IDEs

  • 1. 먼저 Claude Code 설정이 끝나 있어야 합니다. (~/.claude.json 안에 nexus-mcp 존재)
  • 2. JetBrains에서: Settings > Tools > MCP Server > Import from Claude
  • 3. IDE를 재시작하고 Nexus 도구가 보이는지 확인하십시오.

14) Codex fallback (수동 TOML)

자동 init을 사용할 수 없을 때만 이 방법을 쓰십시오.

codex fallback (Local Lite)
[mcp_servers.nexus-mcp]
command = "npx"
args = ["-y", "@nunchiai/nexus-mcp"]

[mcp_servers.nexus-mcp.env]
NEXUS_STORAGE = "local"
NEXUS_AGENT_NAME = "codex"

15) Hosted API 예제

remember
curl -X POST https://gateway.nunchiai.com/v1/amcp/remember \
  -H "Authorization: Bearer sk_write_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [
      {
        "content": "Auth flow uses PKCE",
        "type": "decision",
        "scope": { "kind": "project", "id": "acme-web" }
      }
    ]
  }'
recall
curl -X POST https://gateway.nunchiai.com/v1/amcp/recall \
  -H "Authorization: Bearer sk_write_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "auth decisions",
    "scope": { "kind": "project", "id": "acme-web" },
    "token_budget": 2000,
    "depth": "deep"
  }'
export / import / delete
POST /v1/amcp/export
{
  "scope": { "kind": "project", "id": "acme-web" },
  "format": "json"
}

POST /v1/amcp/import
{
  "items": [ ... ]
}

DELETE /v1/amcp/memories/:id?scope[kind]=project&scope[id]=acme-web
여전히 사용 가능한 native 경로
POST /v1/memory/ingest
POST /v1/memory/hydrate
GET  /v1/memory/sessions
GET  /v1/memory/stats

16) 레퍼런스 에이전트 CLI

Nexus는 이제 얇은 AMCP 레퍼런스 클라이언트 패키지를 배포합니다. 직접 클라이언트를 엮기 전에, 실제 CLI로 호스팅 메모리 라이프사이클을 검증하고 싶을 때 사용하십시오.

배포된 패키지
npx -y -p @nunchiai/reference-agent@latest amcp-agent --help

export NEXUS_URL=https://gateway.nunchiai.com
export NEXUS_API_KEY=sk_write_your_key
export OPENAI_API_KEY=your_model_key

npx -y -p @nunchiai/reference-agent@latest \
  amcp-agent task "Inspect this repo and summarize the auth flow." --amcp-trace
배포된 compliance 점검
export NEXUS_URL=https://gateway.nunchiai.com
export NEXUS_API_KEY=sk_write_your_key
export NEXUS_READ_ONLY_API_KEY=sk_read_your_key

npx -y -p @nunchiai/reference-agent@latest amcp-agent compliance
성공 출력 형태
[AMCP] session     start ...
[tool] read_file  ...
[AMCP] remember    scope=project  "Session summary: ..."
[AMCP] session     close ... transient_deleted=1
<final natural-language summary>

PASS remember
PASS recall
PASS delete_denied
PASS soft_delete
PASS export_import_roundtrip
AMCP_COMPLIANCE_OK
AMP_COMPLIANCE_OK   # compatibility alias marker
자주 보는 실패 출력
LLM_API_KEY looks like a Nexus API key. Set a real OpenAI-compatible model key in OPENAI_API_KEY or LLM_API_KEY.

FAIL delete_denied: NEXUS_READ_ONLY_API_KEY is required for delete_denied compliance.

17) Export / import 와 delete 의미

export/import는 이식성 스토리의 일부입니다. 현재 delete 동작은 소프트 삭제이며, 삭제된 메모리를 일반 recall에서 제외하지만 즉시 하드 퍼지를 보장하지는 않습니다.

이 점은 메모리를 다른 시스템으로 옮길 때, 다른 환경에 컨텍스트를 재주입할 때, 레퍼런스 에이전트 핸드오프 흐름을 만들 때 중요합니다.

18) 도구 실행 의미 (중요)

nexus_remember를 평문으로 입력한다고 메모리가 저장되지는 않습니다. 메모리는 에이전트가 실제 MCP 도구 호출을 실행할 때만 저장됩니다.

remember 뒤에는 nexus_stats, nexus_sessions, nexus_recall을 실행해 직접 검증하십시오.

19) 오류 의미

코드의미조치
401유효하지 않거나 폐기된 키키를 교체하고 init을 다시 실행
402플랜 또는 사용량 한도 도달업그레이드하거나 다음 주기를 기다림
422유효하지 않은 스키마payload 수정
5xx서비스 이슈backoff와 함께 재시도하고 ops에 알림