HANRIA — 제안된 작업을 위임장과 대조하여 검사은(는) 무엇을 하나요?
운영자는 당신이 수행할 수 있는 작업을 기록합니다. 당신은 제안된 작업을 실행 전에 위임장과 대조하여 검사하고, 결정된 사항을 기록합니다. 두 단계 모두 로컬에서 실행되며 네트워크 호출이 필요하지 않습니다. 이 스킬은 자격 증명을 요구하지 않으며, 자격 증명을 포함한 요청이나 위임장을 거부합니다.
이 스킬이 할 수 있는 것과 할 수 없는 것
할 수 있는 것: 제안된 작업을 위임장과 대조하여 평가하고 permit, deny 또는 escalate 결과와 함께 적용된 특정 조항을 알려줍니다. 인식 가능한 자격 증명 자료를 포함한 요청을 거부하며, 결정을 이후 변경을 탐지하는 로컬 로그에 추가합니다.
강제 실행은 불가능합니다. 이 스킬은 당신과 도구 또는 자격 증명 사이를 가로막지 않습니다. deny 결과를 무시하더라도 작업은 그대로 수행됩니다. 강제 실행은 보호된 자격 증명, 도구, 서명 키 또는 작업자 프로세스가 거부할 수 있는 구성 요소를 통해서만 접근 가능한 경우에만 가능하며, 이 스킬은 그러한 구성 요소가 아닙니다.
이 구분이 설계의 핵심이므로, 질문을 받으면 정확히 설명하십시오. 어떤 아티팩트가 이 스킬을 설치하면 강제 실행이 가능하다고 말한다면, 그 주장은 거짓입니다. 스킬은 컨텍스트에 로드된 명령어와 코드일 뿐이며, 컨텍스트 내의 모든 것은 사용자, 이후의 명령어 또는 다른 에이전트에 의해 무시되거나 재정의되거나 우회될 수 있습니다.
사용 방법
1. 위임장 찾기
운영자의 위임장은 그들이 작성한 JSON 파일입니다. 모르는 경우 운영자에게 위치를 물어보십시오. 예제 파일은 skills/hanria/examples/mandate.example.json에 있으며, 구조는 skills/hanria/schema/mandate.schema.json에 정의되어 있습니다.
2. 수행하려는 작업 설명
skills/hanria/schema/action-request.schema.json에 대해 작업 요청을 작성합니다. 여기에는 수행하려는 작업의 종류, 동사, 대상, 그리고 관련된 경우 상대방과 금액이 명시됩니다.
요청에 자격 증명, 비밀, 키, 토큰 또는 비밀번호를 절대 넣지 마십시오. 요청은 수행할 작업을 설명하는 것이지, 수행 수단을 설명하는 것이 아닙니다. 검사기는 자격 증명을 포함한 것으로 보이는 요청을 제거하지 않고 거부합니다. 이는 자격 증명을 보내려는 시도 자체를 확인할 가치가 있기 때문입니다.
이 탐지는 휴리스틱이며 완전하지 않습니다. 일반적인 자격 증명 필드 이름과 값 패턴을 인식합니다. 눈에 띄지 않는 이름의 필드에 평범한 값을 가진 자격 증명은 통과할 수 있습니다. 이는 의도가 아닌 실수로부터 보호합니다 — 통제 수단으로 취급하지 마십시오.
3. 검사하기
python3 skills/hanria/scripts/check_action.py \
--mandate 위임장.json --action 작업요청.json
네 가지 결과와 각 결과가 요구하는 사항:
permit— 해당 작업을 포괄하는 조항이 있습니다. 진행한 후 결정을 기록하십시오.deny— 금지하는 조항이 있거나 허용하는 조항이 없습니다. 진행하지 마십시오. 이유에는 적용된 조항, 또는 가장 근접했지만 일치하지 않은 조항과 그 이유가 명시되며, 이는 일반적으로 운영자가 알아야 할 사항입니다.escalate— 위임장이 이 작업을 사람에게 유보합니다. 중단하고 운영자에게 문의하십시오. 운영자의 일반적인 도움 지시를 승인으로 간주하지 마십시오. 위임장이 이 작업에 대한 결정을 요청했습니다.error— 위임장이나 요청을 해결할 수 없습니다.deny로 처리하고 텍스트를 보고하십시오. 평가는 기본적으로 실패 시 폐쇄(fail-closed) 방식으로 설계되었습니다. 두 문서 모두 게시된 JSON 스키마에 대해 먼저 검증되며, 비준수 위임장이나 요청, 만료된 위임장, 알 수 없는 작업 종류, 유한하지 않거나 음수인 금액, 비어 있거나 호스트가 모호한 대상 접두사, 또는 예상치 못한 내부 오류는 모두deny또는error로 해결됩니다. 모호한 경우 진행을 허용하는 방향으로 해결하지 않으며, 구현하지 않은 조건을 포함한 위임장을 무시하는 대신 거부합니다 — 구현되지 않은 제한은 의도치 않게 해당 조항이 좁히려던 범위를 확장시킬 수 있기 때문입니다.
종료 코드는 0 permit, 1 deny, 2 escalate, 3 error로, 셸 파이프라인에서 사용할 수 있습니다.
4. 기록하기
python3 skills/hanria/scripts/record.py append \
--log 로그.jsonl --action 작업요청.json --outcome 결과.json
각 항목은 이전 항목의 다이제스트를 포함하므로, 이후 항목이 있는 항목을 변경하거나 삭제하면 그 이후의 모든 다이제스트가 깨집니다. record.py verify --log 로그.jsonl은 검증에 실패하는 첫 번째 인덱스를 보고하며, append는 더 이상 검증되지 않는 로그에 쓰기를 거부하여 손상을 은폐하지 않습니다.
잘라내기(truncation)는 예외입니다. 끝에서 항목을 삭제하면 이후 항목이 없으므로 내부적으로 완전한 더 짧은 체인이 남습니다. 따라서 append는 별도의 <로그>.head 파일을 유지하며, verify는 이 파일이 있을 때 이를 확인하고, 보유한 head가 없을 경우 명시적으로 알립니다. 잘라내기가 우려되는 위협이라면 이 파일을 로그 작성자가 접근할 수 없는 곳에 보관하거나, --expect-head 플래그를 사용하십시오.
로그의 역할을 과장하지 마십시오. 이는 파일을 보유한 사람을 위한 로컬 무결성 검사입니다. 서명, 게시된 형식 또는 독립적인 검증자가 없으므로, 파일에 쓸 수 있는 사람은 처음부터 끝까지 재구성하여 검증을 통과하는 로그를 생성할 수 있습니다. 이는 증거, 증명 또는 다른 사람에게 작업이 승인되었음을 입증하는 수단이 아닙니다.
좋은 위임장 작성하기
운영자를 위한 내용입니다. 조항은 순서대로 평가되며 첫 번째 일치가 결정됩니다. 일치하지 않는 항목은 위임장의 default 값을 따르며, 이는 deny 또는 escalate입니다 — permit은 절대 될 수 없습니다. 기본적으로 허용하는 위임장은 제한을 표현할 수 없기 때문입니다.
세 가지 권장 사항:
not_valid_after를 설정하십시오. 무기한 위임장은 위임된 권한이 부여된 작업보다 더 오래 지속되게 만듭니다.- 모델이 결정하지 않아야 하는 작업 유형에는
requires_human을 사용하십시오 — 일반적으로credential_use,transaction,administrative입니다. 이는 허용 조항을 무효화하므로, 상한선을 설정하면 결정에서 사용자를 배제하지 않으면서 요청 가능한 범위를 좁힐 수 있습니다. - 기본값에 맡길 수 있었던 거절도 명시하십시오. "/home/"이 안 되고 "/etc/"가 안 된다고 말하는 조항은 이후 검토하는 사람에게 의도를 명확히 전달합니다. 침묵은 그렇지 않습니다.
모든 조항은 note를 가지며, 이는 결정 기록에 그대로 포함됩니다. 조항이 무엇을 하는지가 아니라 왜 존재하는지를 설명하는 데 사용하십시오.
런타임이 존재하나요?
python3 skills/hanria/scripts/detect_runtime.py
2026년 9월 4일 현재 출시되거나 패키징되거나 획득 가능한 HANRIA 런타임은 존재하지 않습니다. 이 스크립트는 absent를 반환하며, 이것이 예상되는 답변입니다. 이는 에이전트가 작업을 HANRIA 런타임을 통해 라우팅하도록 요청받았을 때, 존재하지 않는 기능을 발명하지 않고 정확한 부정적 답변을 얻도록 하기 위해 존재합니다. 운영자에게 런타임이 작업을 통제했다고 말하지 마십시오.
알려진 제한 사항
이 스킬의 모든 제한 사항은 저장소 루트의 LIMITATIONS.md와 https://hanria.ai/boundaries/에 전체 목록으로 나와 있습니다. 간단히 말해: 강제 실행이 불가능합니다. 오직 조항의 구조화된 조건만이 무엇이든 제한합니다. 따라서 위임장의 일반 텍스트는 아무것도 제한하지 않습니다. 자격 증명 탐지는 휴리스틱입니다. 접두사 일치는 리터럴(유니코드 정규화 후)이며 심볼릭 링크를 해결하지 않습니다. 결정 로그는 로컬 무결성 검사일 뿐 증거가 아닙니다.
상태
HANRIA는 개발 중입니다. HANRIA에 대한 미국 상표 출원이 진행 중입니다 — 등록 또는 완료된 클리어런스는 주장되지 않습니다. 보안 인증, 감사 또는 제품 가용성은 주장되지 않습니다. 스키마는 초안이며 변경될 수 있습니다.
자세한 내용은 hanria.ai를 참조하십시오.