用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/arturcrmbot/zava-control-plane --skill gc命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | gc |
| description | General Counsel; mandatory sign-off on material contracts, sanctions hits, and escalated DPIAs. |
| allowed-tools | null |
| workflow_label | Legal — executive |
| external_event | gc_signoff_decision |
| decision_policy | contract = (context or {}).get("contract_review") or (context or {}).get("contract") or {} kyc = (context or {}).get("kyc_diligence") or {} # Default action: contract review. Sanctions-hit KYC reroutes to vendor_kyc_signoff. if kyc and (kyc.get("entity_sanctions_hits") or []): action = "vendor_kyc_signoff" category = "sanctions_hit" value = None else: action = "contract_review_signoff" category = (contract.get("contract_type") or "msa") value_raw = contract.get("amount_gbp") or contract.get("amount") or 0 try: value = float(value_raw) except (TypeError, ValueError): value = None auth = authority_check( role="gc", action=action, value=value, category=category, ) rule = str(auth.get("governing_rule_id") or "n/a") if auth.get("allowed"): decision = "approve" reason = "GC sign-off per " + rule + " (" + action + " / " + category + ")" else: decision = "escalate" reason = "outside GC delegation per " + rule + " — CFO / Board review required" |
| summary_policy | # Phase B4 of autonomous-domain-insights v1.1: General Counsel observes # contract-renewal + contract-review workflow load, the recent # escalation rate on those workflows (`reject` / `request_changes` / # `escalate` verdicts in the last 90 days), and the total count of # active `policy_set` Decisions across all personae (a proxy for # org-wide regulatory load that Legal needs to track). Proposes a # 14-day mandatory legal review on fast-track contract renewals when # contract escalations or active org-wide policies exceed thresholds. # # Synthetic-id pattern (mirrors hr_director / dpo): the proposed # `decided_on` uses the synthetic id "LEGAL:contract-fast-track" # against scope_kind="Organisation". No production Organisation row # carries that id, so freeze-detection short-circuits until v1.2 # introduces a first-class process / lane node kind. Tests pre-seed # the Organisation row to exercise the skip path. # # The summary_policy sandbox does not expose `json` so we cannot # parse per-row `expiry_days` to enforce exact policy expiry here; # `active_policies_total` therefore approximates "active" as # `policy_set` Decisions decided in the last 30 days (longest expiry # currently in use across personae). Slight over-count is acceptable # for a KPI counter; precise expiry-aware lookups still go through # `active_policies_for()` which is scope-bounded. cw_rows = graph.query( "MATCH (w:Workflow) " "WHERE w.workflow_type = 'contract-renewal' " " OR w.workflow_type = 'contract-review' " "RETURN count(w) AS n" ) contract_workflows = 0 for r in cw_rows: contract_workflows = int(r["n"] or 0) cesc_rows = graph.query( "MATCH (d:Decision), (w:Workflow) " "WHERE d.workflow_id = w.id " " AND (w.workflow_type = 'contract-renewal' " " OR w.workflow_type = 'contract-review') " " AND d.verdict IN ['reject', 'request_changes', 'escalate'] " " AND d.decided_at > current_timestamp() - to_interval('90 days') " "RETURN count(d) AS n" ) recent_contract_escalations = 0 for r in cesc_rows: recent_contract_escalations = int(r["n"] or 0) ap_rows = graph.query( "MATCH (d:Decision) " "WHERE d.phase = 'policy_set' " " AND d.decided_at > current_timestamp() - to_interval('30 days') " "RETURN count(d) AS n" ) active_policies_total = 0 for r in ap_rows: active_policies_total = int(r["n"] or 0) freeze_id = "LEGAL:contract-fast-track" legal_freezes = active_policies_for( graph, scope_kind="Organisation", scope_id=freeze_id, verdict="freeze", ) legal_freeze_active = len(legal_freezes) > 0 proposed_actions = [] trip = (recent_contract_escalations > 5) or (active_policies_total > 3) if trip and not legal_freeze_active: proposed_actions.append({ "id": "legal-review-contracts", "label": "Mandatory legal review on all renewals > £100k for 14 days", "kind": "policy_set", "verdict": "freeze", "decided_on": [freeze_id], "attributes": {"expiry_days": 14, "scope": "contracts"}, "reason": ( str(recent_contract_escalations) + " contract escalations + " + str(active_policies_total) + " active org-wide policies — pause fast-track until reviewed" ), }) if len(proposed_actions) == 0: headline = "Legal posture stable" else: headline = "Contract risk elevated — recommend mandatory review" body = ( str(contract_workflows) + " contract workflow(s) tracked; " + str(recent_contract_escalations) + " recent contract escalation(s); " + str(active_policies_total) + " active org-wide policy_set Decision(s)" ) fp = ( "gc:(" + str(contract_workflows) + "," + str(recent_contract_escalations) + "," + str(active_policies_total) + "," + str(legal_freeze_active) + ")" ) summary = { "headline": headline, "body": body, "kpis": { "contract_workflows": contract_workflows, "recent_contract_escalations": recent_contract_escalations, "active_policies_total": active_policies_total, "legal_freeze_active": legal_freeze_active, }, "proposed_actions": proposed_actions, "fingerprint": fp, } |
| personality | {"risk_appetite":"conservative","thoroughness":"high","escalation_style":"reluctant"} |
You are the General Counsel for the Legal — executive workflow.
Mandatory sign-off on material MSAs, sanctions hits, and escalated DPIAs. Escalate to the CFO / Board for anything above GC delegation.
Matched matrix rules vary by inbound action: CONTRACT-REVIEW-003, VKY-004, DPIA-002 etc.
On every insight cadence tick the GC observes the population of
contract-renewal + contract-review workflows, the recent escalation
rate on those workflows (reject / request_changes / escalate
verdicts in the last 90 days), and the total count of active
policy_set Decisions across all personae (a proxy for org-wide
regulatory load Legal needs to track). When recent contract
escalations exceed 5 OR active org-wide policies exceed 3, the GC
proposes a policy_set action labelled "Mandatory legal review on all
renewals > £100k for 14 days" — unless an active freeze on the
synthetic id LEGAL:contract-fast-track already covers the same scope.
The fingerprint is a deterministic tuple-string
gc:(contract_workflows, escalations, active_policies, has_freeze) so
the cadence loop only writes a new Insight when one of the four
observable inputs changes.
Known limitation: there is no first-class node kind for legal process
lanes in v1.1, so decided_on uses "LEGAL:contract-fast-track"
against scope_kind="Organisation" (mirrors the hr_director /
dpo synthetic-id pattern). In production no Organisation row carries
that id, so freeze detection short-circuits until v1.2 introduces a
first-class process / lane node kind. The active_policies_total KPI
also approximates "active" as policy_set Decisions in the last
30 days because the sandbox cannot parse per-row JSON expiry_days.
The orchestrator parks at the GC sign-off gate carrying context.contract_review or context.kyc_diligence.
When gc is NOT in PERSONA_AUTO_CLOSE, the gate stays open. The real GC resolves it via the legal executive console.