클라우드, 보안, 데이터, 런타임 도구
클라우드 자문, 보안 운영, 프로젝트 인텔리전스, 리포팅, 백업, 데이터 보존, 런타임 설정, 검증 가능한 인텐트를 다루는 도구들입니다.
이 페이지는 클라우드 및 보안 작업을 자문하고, 프로젝트 데이터를 리포트로 변환하며, 백업과 데이터 보존을 관리하고, 런타임 설정을 즉시 변경하며, 커머스 게이팅 인텐트를 검증하는 Revka 도구들을 설명합니다: cloud_ops, cloud_patterns, security_ops, 취약점 스캔 파서, project_intel, report_template, backup, data_management, model_routing_config, model_switch, proxy_config, workspace, vi_verify. 대부분은 opt-in 방식이며 설정으로 활성화됩니다 — config.toml에서 활성화해야만 해당 도구가 등록됩니다. 또한 여러 도구는 의도적으로 읽기 전용 자문 도구로 설계되어 있어, 클라우드 리소스·파일·금전을 건드리지 않고 입력 내용만 분석합니다.
이 페이지는 도구가 허용하는 정확한 액션과 활성화에 필요한 설정 키를 확인할 때 참고하세요. 전체 도구 카탈로그는 도구 개요를 참조하세요. 여기서 다루는 설정 키는 설정: 프로바이더, 에이전트 & 라우팅 및 설정: 게이트웨이, 메모리, 보안 & 플랫폼에서도 설명합니다. 런타임 설정 도구는 직접 수동으로 편집할 설정을 에이전트 인터페이스로 제공합니다 — 설정 개요를 참조하세요.
클라우드 자문
섹션 제목: “클라우드 자문”cloud_ops
섹션 제목: “cloud_ops”cloud_ops는 읽기 전용 클라우드 전환 자문 도구입니다. 인프라 코드 계획을 검토하고, 마이그레이션 경로를 평가하며, 비용을 분석하고, 아키텍처를 AWS / Azure / GCP Well-Architected Framework 기둥에 맞춰 점검합니다. 클라우드 리소스를 생성하거나 수정하지 않으며 — 전달받은 텍스트의 분석 결과만 반환합니다.
[cloud_ops]enabled = trueaction | 용도 |
|---|---|
review_iac | IaC 계획 검토 (예: Terraform 플랜) |
assess_migration | 워크로드의 마이그레이션 경로 평가 |
cost_analysis | 청구 / 비용 데이터 분석 |
architecture_review | Well-Architected 기둥 기준 아키텍처 검토 |
필드: input (문자열, 필수) — IaC 플랜 텍스트, 아키텍처 설명, 또는 청구 데이터; cloud (선택) — aws, azure, gcp 중 하나.
{ "action": "review_iac", "input": "<terraform plan text>", "cloud": "aws" }cloud_patterns
섹션 제목: “cloud_patterns”cloud_patterns는 클라우드 패턴 라이브러리입니다. 워크로드 설명을 입력하면 컨테이너화, 서버리스, 데이터베이스 현대화 등 적용 가능한 클라우드 네이티브 아키텍처 패턴을 제안합니다. cloud_ops.enabled = true 동일 게이트 아래 cloud_ops와 함께 등록됩니다.
필드: workload (문자열, 필수) — 워크로드 설명; cloud (선택) — 대상 프로바이더.
{ "workload": "legacy monolithic Java ERP system, 500 users, needs 99.9% uptime" }보안 운영
섹션 제목: “보안 운영”security_ops
섹션 제목: “security_ops”security_ops는 관리형 사이버보안 서비스(MCSS)를 위한 운영 도구입니다. 알림을 분류(triage)하고, 플레이북을 실행하며, 취약점 출력을 파싱하고, 리포트를 생성하며, 플레이북 목록을 나열하고, 알림 지표를 보고합니다.
[security_ops]enabled = trueaction | 용도 | 주요 필드 |
|---|---|---|
triage_alert | 보안 알림 분류 | alert (객체: type, severity, source, description) |
run_playbook | 대응 플레이북 단계 실행 | playbook, step (0-based 인덱스) |
parse_vulnerability | 원시 스캔 출력을 파인딩으로 파싱 | scan_output |
generate_report | 보안 리포트 생성 | report_type |
list_playbooks | 사용 가능한 플레이북 목록 | — |
alert_stats | 알림 지표 반환 | — |
{ "action": "triage_alert", "alert": { "type": "brute_force", "severity": "high", "source": "firewall" } }취약점 스캔 연동
섹션 제목: “취약점 스캔 연동”취약점 스캔 파서(security_ops의 parse_vulnerability 액션에서 사용)는 Nessus, Qualys, 일반 CVSS JSON 형식의 스캔 출력을 읽어 구조화된 파인딩으로 변환합니다. 원시 CVSS에 컨텍스트를 반영한 유효 우선순위 점수를 계산합니다 — 인터넷 노출 자산에는 +2.0, 프로덕션 자산에는 +1.0을 더하며, 최대 10.0으로 제한됩니다.
각 Finding은 cvss_score (0–10), internet_facing (bool), production (bool, 기본값 true)을 포함합니다. CVSS 점수는 다음 심각도 구간으로 매핑됩니다:
| 심각도 | CVSS |
|---|---|
| critical | ≥ 9.0 |
| high | ≥ 7.0 |
| medium | ≥ 4.0 |
| low | > 0.0 |
| informational | 0 |
프로젝트 인텔리전스 & 리포팅
섹션 제목: “프로젝트 인텔리전스 & 리포팅”project_intel
섹션 제목: “project_intel”project_intel은 읽기 전용 프로젝트 납기 인텔리전스 도구입니다. 상태 보고서를 생성하고, 납기 리스크를 탐지하며, 클라이언트 업데이트 초안을 작성하고, 스프린트를 요약하며, 제공한 프로젝트 데이터로부터 공수를 추정합니다.
[project_intel]enabled = truedefault_language = "en"risk_sensitivity = "medium" # low | medium | highaction | 용도 |
|---|---|
status_report | 납기 상태 보고서 생성 |
risk_detection | 납기 리스크 탐지 |
client_update | 클라이언트 대면 업데이트 초안 작성 |
sprint_summary | 스프린트 요약 |
effort_estimate | 잔여 공수 추정 |
필드: data (객체) — 분석할 프로젝트 데이터; language (선택) — 출력 언어, 기본값은 project_intel.default_language. risk_sensitivity는 risk_detection이 이슈를 플래그하는 민감도를 제어합니다.
{ "action": "risk_detection", "data": { "tasks": [], "deadline": "2026-07-01" } }report_template
섹션 제목: “report_template”report_template은 지정된 리포트 템플릿에 변수를 치환하여 렌더링합니다. project_intel과 함께 등록됩니다(동일한 project_intel.enabled = true 게이트).
필드: template (필수), variables (객체), language (선택, 기본값 en — en, de, fr, it 중 하나).
template | 렌더링 결과 |
|---|---|
weekly_status | 주간 상태 보고서 |
sprint_review | 스프린트 리뷰 |
risk_register | 리스크 레지스터 |
milestone_report | 마일스톤 보고서 |
{ "template": "weekly_status", "variables": { "team": "Backend", "week": "2026-W24" }, "language": "en" }백업 & 데이터 보존
섹션 제목: “백업 & 데이터 보존”backup
섹션 제목: “backup”backup은 워크스페이스 백업을 생성, 목록 조회, 검증, 복원합니다.
[backup]enabled = true # default# include_dirs = [...] # directories captured in each backup# max_keep = ... # retention: keep the N most recent backupscommand | 용도 |
|---|---|
create | 새 백업 생성 |
list | 기존 백업 목록 조회 |
verify | 백업 무결성 검증 (name 필요) |
restore | 지정된 백업 복원 (name 필요) |
max_keep은 보존 정책을 적용합니다 — 한도를 초과한 오래된 백업은 자동으로 삭제됩니다. include_dirs는 캡처할 워크스페이스 디렉터리를 지정합니다.
{ "command": "restore", "name": "backup-20260601" }data_management
섹션 제목: “data_management”data_management는 스토리지 통계를 보고하고, 오래된 워크스페이스 데이터(로그, 세션 기록, 결과)를 삭제합니다. 기본적으로 비활성화되어 있으며 data_retention 설정으로 게이팅됩니다.
[data_retention]enabled = true# retention_days = ...command | 용도 |
|---|---|
stats | 스토리지 통계 표시 |
list | 보존된 데이터 목록 조회 |
purge | older_than_days보다 오래된 데이터 삭제 |
{ "command": "purge", "older_than_days": 90 }런타임 설정
섹션 제목: “런타임 설정”이 도구들은 데몬을 재시작하지 않고 실행 중인 런타임 설정을 변경합니다. config.toml을 직접 편집하는 것과 동일한 작업을 에이전트 인터페이스로 제공합니다.
model_switch
섹션 제목: “model_switch”model_switch는 현재 대화의 AI 모델을 즉시 전환합니다.
action | 용도 |
|---|---|
get | 현재 프로바이더/모델 표시 |
list_providers | 사용 가능한 프로바이더 목록 |
list_models | provider의 모델 목록 |
set | provider + model로 즉시 전환 |
{ "action": "set", "provider": "anthropic", "model": "claude-opus-4-5" }model_routing_config
섹션 제목: “model_routing_config”model_routing_config는 런타임에서 기본 모델, 시나리오 기반 라우트, 분류 규칙, 위임 서브에이전트 프로파일을 관리합니다. 항상 등록됩니다. model_switch가 한 대화에 한해 활성 모델을 변경하는 것과 달리, model_routing_config는 힌트 이름을 프로바이더/모델 쌍에 매핑하는 영속적인 라우팅 규칙([[model_routes]] 설정)과 위임 에이전트 프로파일을 편집합니다.
action | 용도 |
|---|---|
get | 현재 라우팅 설정 읽기 |
set_default | 기본 provider + model 설정 |
add_route | 명명된 모델 라우트 추가 |
remove_route | 라우트 제거 |
list_routes | 설정된 라우트 목록 |
add_delegate | 위임 서브에이전트 프로파일 추가 |
remove_delegate | 위임 프로파일 제거 |
{ "action": "set_default", "provider": "openrouter", "model": "anthropic/claude-opus-4-5" }라우트와 분류 규칙이 에이전트 루프에 어떻게 적용되는지는 설정: 프로바이더, 에이전트 & 라우팅 및 라우팅, 안정성 & 튜닝을 참조하세요.
proxy_config
섹션 제목: “proxy_config”proxy_config는 Revka의 아웃바운드 프록시를 세 가지 범위로 관리합니다 — revka (Revka 내부 HTTP 클라이언트만), services (특정 서비스 키/셀렉터), environment (프로세스 전체에 HTTP_PROXY / HTTPS_PROXY / ALL_PROXY / NO_PROXY도 내보냄). [proxy] 설정 섹션을 반영합니다.
| 범위 | 영향 대상 | 환경 변수 내보내기 |
|---|---|---|
revka | Revka 내부 HTTP 클라이언트 | 아니오 |
services | 선택된 서비스 키/셀렉터만 | 아니오 |
environment | 런타임 및 프로세스 환경 | 예 |
액션: get, set, list_services, apply_env, disable, clear_env. 허용되는 프록시 URL 스킴은 http, https, socks5, socks5h입니다. scope = "services"인 경우 비어 있지 않은 services 목록을 제공해야 합니다(provider.openai, tool.http_request, channel.telegram 같은 구체적인 키 또는 provider.* 같은 셀렉터).
{ "action": "set", "enabled": true, "scope": "revka", "http_proxy": "http://127.0.0.1:7890", "https_proxy": "http://127.0.0.1:7890", "no_proxy": ["localhost", "127.0.0.1"] }배포 컨텍스트는 네트워크 배포, Raspberry Pi & 프록시를 참조하세요.
프록시 에이전트 플레이북
섹션 제목: “프록시 에이전트 플레이북”프록시 또는 에어갭 네트워크에서는 아래 순서를 복사해서 사용하세요. 먼저 현재 상태를 확인하고, 유효한 키를 파악한 후, 적용하고, 검증하고, 동작이 이상하면 롤백합니다.
1. 현재 상태 확인 및 파악.
{ "action": "get" }{ "action": "list_services" }모드 A — Revka 내부만 프록시 적용 (프로세스 환경 변수 내보내기 없음):
{ "action": "set", "enabled": true, "scope": "revka", "http_proxy": "http://127.0.0.1:7890", "https_proxy": "http://127.0.0.1:7890", "no_proxy": ["localhost", "127.0.0.1"] }{ "action": "get" }모드 B — 특정 서비스에만 프록시 적용:
{ "action": "set", "enabled": true, "scope": "services", "services": ["provider.openai", "tool.http_request", "channel.telegram"], "all_proxy": "socks5h://127.0.0.1:1080", "no_proxy": ["localhost", "127.0.0.1", ".internal"] }{ "action": "get" }모드 C — 전체 프로세스 환경에 프록시 적용 (환경 변수 내보내기):
{ "action": "set", "enabled": true, "scope": "environment", "http_proxy": "http://127.0.0.1:7890", "https_proxy": "http://127.0.0.1:7890", "no_proxy": "localhost,127.0.0.1,.internal" }{ "action": "apply_env" }{ "action": "get" }롤백 패턴:
{ "action": "disable" } // disable proxy (safe default){ "action": "disable", "clear_env": true } // disable and force-clear exported env vars{ "action": "clear_env" } // keep proxy enabled, clear env exports onlyservices 범위 변경 시 proxy.scope='services' requires a non-empty proxy.services list 오류가 발생하면 구체적인 키 또는 셀렉터를 하나 이상 설정하세요. 프록시가 예상대로 적용되지 않는 경우 {"action":"list_services"}를 다시 실행하여 이름을 확인한 후, {"action":"get"}으로 runtime_proxy 및 environment 스냅샷을 점검하세요.
workspace
섹션 제목: “workspace”workspace는 다중 클라이언트 워크스페이스 격리를 관리합니다. 각 워크스페이스는 별도의 메모리, 감사 추적, 시크릿, 도구 제한을 제공합니다 — 컨설팅 및 운영자 배포에서 사용하는 멀티테넌트 기능입니다.
[workspace]enabled = trueworkspaces_dir = "~/.revka/workspaces"action | 용도 |
|---|---|
list | 워크스페이스 목록 조회 |
create | 워크스페이스 생성 (name 필요) |
switch | 활성 워크스페이스 전환 (name 필요) |
info | 워크스페이스 상세 정보 표시 (name 필요) |
export | 워크스페이스 프로파일 내보내기 (자격증명 제외) |
전환 시 활성 설정이 변경되며, 적용되는 메모리 네임스페이스, 감사 네임스페이스, 자격증명 프로파일도 함께 변경됩니다.
{ "action": "switch", "name": "client-acme" }격리 모델 및 프로파일별 필드는 설정: 게이트웨이, 메모리, 보안 & 플랫폼을 참조하세요.
검증 가능한 인텐트
섹션 제목: “검증 가능한 인텐트”vi_verify
섹션 제목: “vi_verify”vi_verify는 검증 가능한 인텐트(Verifiable Intent) 자격증명 체인을 검증합니다 — 커머스 액션을 게이팅하는 Revka의 SD-JWT 메커니즘입니다. 자격증명 레이어 간의 암호화 바인딩을 확인하고, 사용자가 위임(mandate)에 첨부한 제약 조건(허용 가맹점, 금액 범위, 예산 한도, 반복 주기 등)을 평가합니다.
[verifiable_intent]enabled = falsestrictness = "strict" # strict | permissiveoperation | 용도 |
|---|---|
verify_binding | 자격증명 레이어 간 sd_hash 바인딩 확인 |
evaluate_constraints | 이행 데이터에 대한 제약 조건 검증 |
필드: credential (객체) — 자격증명 체인; fulfillment (객체) — evaluate_constraints용 이행 데이터. strictness는 체인 검증 오류를 얼마나 엄격하게 보고할지를 제어합니다.
{ "operation": "verify_binding", "credential": { } }전체 검증 가능한 인텐트 명세, 위임 모드, 제약 조건 유형은 검증 가능한 인텐트 (커머스 게이팅)를 참조하세요.