Skip to main content
Glama
AAH20

io.github.AAH20/agent-action-gate

by AAH20

Agent Action Gate

에이전트 및 MCP 도구 호출을 위한 Gate/Prove 런타임.

도구 의도 정규화 → 알 수 없는 항목 거부 → 모델 신뢰도를 승인으로 간주하지 않음 → 파괴/프로비저닝/폐기에 대한 HITL 증명 → Action Ledger(해시 체인).

GRC_Claw @grc-claw/agent-policy-firewall에서 추출됨. 이 저장소는 날카로운 파운드리 슬라이스입니다: 하나의 명령, 대성당 없음.

상업용(판매 방식): $499 Instant Audit 및 consultation (a2zsoc.com에서).

존재 이유 (수익 + 비용)

AI 에이전트 기업은 "또 하나의 MCP"에 비용을 지불하지 않습니다. 그들은 SOC 2 Type I, PE 실사 또는 보험 갱신 전에 무인 파괴적 도구를 차단하고 Gate/Prove 격차를 증명하는 데 비용을 지불합니다.

비용 요인

이 게이트가 하는 일

구매자 결과

게이트 없는 shell.exec / disable-control / 폐기

HITL 증명 토큰 + approved 없으면 DENY

프로덕션 폭발 방지

에이전트 '95% 확신'

never_equate_intent_to_approval: true

의도 ≠ 원장 증명

쓰기 도구는 첫 생각에 실행됨

기본값 SIMULATE (부작용 없음)

FDE 분, 사고 비용이 아님

감사 추적 없음

해시 체인이 있는 추가 전용 Action Ledger

실사 패킷

핵심 규칙: 에이전트 의도 또는 모델 점수를 인간 승인과 동일시하지 말 것.

예시 비용 스케치(견적 아님): make bench.

Related MCP server: agent-security-gateway

빠른 시작

make demo
PYTHONPATH=. python3 -m aag demo
PYTHONPATH=. python3 -m aag check fixtures/t1059_unattended_shell.json
PYTHONPATH=. python3 -m aag bench

무인 고위험 호출은 0.99 신뢰도에서도 DENY입니다. ALLOW에는 AAG_PROVE_TOKEN(또는 --prove-token) 및 approved: true가 필요합니다.

export AAG_PROVE_TOKEN='replace-me'
PYTHONPATH=. python3 -m aag check fixtures/proved_decommission.json --prove-token "$AAG_PROVE_TOKEN"

킬 스위치: AAG_KILL_SWITCH=1 또는 artifacts/KILL 터치.

MCP stdio 서버

이 프로세스는 도구를 절대 실행하지 않습니다. 클라이언트는 파괴적 도구를 호출하기 전에 gate_check를 호출합니다.

PYTHONPATH=. python3 -m aag serve

Cursor / Claude 예제 (mcpServers):

{
  "agent-action-gate": {
    "command": "python3",
    "args": ["-m", "aag", "serve"],
    "cwd": "/path/to/agent-action-gate",
    "env": { "PYTHONPATH": ".", "AAG_PROVE_TOKEN": "replace-me" }
  }
}

Docker / 레지스트리 이미지:

docker run --rm -i ghcr.io/aah20/agent-action-gate:0.2.0

공식 MCP 레지스트리 이름: io.github.AAH20/agent-action-gate

엔벨로프

모든 결정에는 다음이 포함됩니다:

  • never_equate_intent_to_approval: true

  • allow_auto_execute (무인 고위험 계층에서는 false)

  • mode: deny | simulate | allow

  • ledger_id / receipt_hash

  • CTA: Instant Audit + consultation

라이브러리 매퍼

stdio 루프 없이 Python에서 동일한 Gate/Prove 정책:

from aag.gate import AgentActionGate
from aag.mcp import evaluate_mcp_call

gate = AgentActionGate(prove_token="replace-me")
evaluate_mcp_call(gate, {"params": {"name": "shell.exec", "arguments": {"note": "no payload"}}})

픽스처 (레이블, 페이로드 아님)

파일

기법

예상 결과

t1059_unattended_shell.json

T1059

무인 파괴적 작업 DENY

t1078_read_identity.json

T1078

읽기 ALLOW

t1562_impair_defenses.json

T1562

무인 파괴적 작업 DENY

write_ticket_simulate.json

—

쓰기 SIMULATE

proved_decommission.json

T1578

HITL 토큰이 있는 경우에만 ALLOW

레이아웃

aag/
  gate.py      HITL + kill-switch + unknown deny
  ledger.py    hash-chained JSONL
  server.py    MCP stdio (gate_check, ledger_verify)
  mcp.py       MCP tools/call mapper (no execution)
  cost.py      illustrative avoidance sketch
  demo.py      fixture runner
fixtures/      ATT&CK-tagged cases
server.json    MCP Registry metadata
tests/         Gate/Prove + MCP contract

유료 평가 (무료 증명 아님)

에이전트나 MCP 서버를 배포하고 SOC 2, PE 실사 또는 보험 전에 Gate/Prove 점검이 필요하다면:

→ $499 Instant Audit
→ consultation (스프린트 / vCISO)

무료로 가져가려는 것: 거절하세요 — make demo를 실행하고 Instant Audit을 구매하세요.

라이선스

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that provides human-in-the-loop approval for risky AI agent actions, with durable state and audit logs.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server that provides a security gateway for AI agents, enforcing allow/confirm/deny policies on tool calls and requiring human approval for risky operations, with full audit logging.
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    An MCP server that acts as an authorization gateway between an AI agent and external systems, deterministically refusing actions that exceed granted authority and sealing every decision into an auditable chain of custody.
    -