Chisle
코딩 에이전트 플러그인, 20개 실시간 작업에서 기본 모델 52% 활용, 간결한 페르소나와 출력 압축 제공
오픈 프레임워크·툴체인으로 빌드 파이프라인에서 AI 에이전트 권한을 제한하고, 실행을 암호 검증하며, 프롬프트 주입을 차단합니다
An open framework and toolchain: bound the authority of AI agents in your build pipeline, cryptographically attest every agent run, and catch workflow prompt injection. Start with a 34-question self-a
개발 도구Python · TeXGitHub @Obaaf온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Open Build and Agent Assurance Framework: workflow auditing, self-assessment, and build and agent security guidance (public draft)
README 전체를 불러오는 중입니다.
README 전문 보기 ↗OBAAF is a free, open framework for keeping malicious code out of the software updates people install. It secures the build pipelines that produce those updates, and the AI agents now connected to them. It works for any team that ships software updates. Its checker reads GitHub Actions workflows and, as an advisory auditor, Jenkinsfiles; the specification and self-assessment name no CI product. The first version is shaped by the needs of small teams without dedicated security staff, independent game studios among them, whose updates reach phones, PCs and consoles.
Status: version 0.3, in active adoption. OBAAF is on PyPI (
pip install obaaf) and in use with pilot teams. The first external pilot ran the checker on a production repository; its feedback is tracked in issue #19 and shapes the 0.2 roadmap. The checker was also exercised in a limited GitHub Actions demonstration. Broader platform validation continues, and formats may still change before 1.0. The code is licensed under Apache-2.0 and the specifications and documentation under CC BY 4.0. This is not a research-paper submission. The specifications and tools are built only from public standards and public documentation. See LICENSING.md.Design decisions, including those still proposed, are tracked in DECISIONS.md.
| Component | What it does | Where |
|---|---|---|
| Build-integrity profile | 28 requirements in nine control families that tailor NIST's SSDF and SLSA to software build pipelines, with game studios as the worked example, each with a test and its mappings | spec/profile.md |
| Agent controls | Taint-bounded authority, eight requirements (R1–R8), a three-lane architecture and a signed record of each agent run | spec/agent-controls.md |
| Self-assessment | 34 yes-or-no questions in four tiers that give a tier and a ranked list of fixes, on paper, in an offline form, or from the command line | spec/self-assessment.md, offline form |
| Team resource site | A public resource introducing the framework, questionnaire, workflow demonstration, and adoption steps | Build and preview instructions |
| Reference pipeline templates | GitHub Actions workflows for four lanes: untrusted contributions, agents, approved changes and releases; Jenkins pipelines for the release lane and an audit job | templates/github-actions, templates/jenkins |
| Verification tools | A pipeline checker that flags risky settings in GitHub Actions workflows and, as an advisory auditor, in Jenkinsfiles (Jenkins); a release verifier that blocks uploads without valid provenance, approvals and agent records; and checks on an agent's signed record and proposal before anything is applied | spec/checker-rules.md, obaaf verify release, obaaf verify agent-run, obaaf proposal check |
The profile, the agent controls and the self-assessment come from the author's two companion papers, both available on Zenodo with DOIs:
Their machine-readable form in src/obaaf/data/ is the single source of truth: the documents in spec/ and the offline form are generated from it.
flowchart LR
subgraph untrusted["Untrusted lane"]
PR["Pull requests,<br/>including partners' forks"] --> CI["Build and test<br/>no secrets, read-only"]
end
subgraph agent["Agent lane (level of its inputs)"]
EV["Issue or comment"] --> SN["Snapshot<br/>digests and labels"] --> AG["Agent<br/>read-only, no secrets"] --> PB["Proposal bundle"]
PB --> AT["Attestation step<br/>signs agent-run record"]
end
subgraph effect["Effect lane (Maintainer)"]
AP["Approval by someone<br/>other than the requester"] --> EF["Checks, then applies<br/>as a pull request"]
end
subgraph release["Release lane (Release)"]
BU["Isolated build from a tag<br/>Tier A or B, no shared cache"] --> PV["Signed provenance<br/>and build record"] --> VE["Verify from the default branch,<br/>then a person approves"] --> UP["Upload; a person<br/>sets it live"]
end
AT --> AP
EF --> PRV["Reviewed merge"] --> BU
OBAAF needs Python 3.10 or later.
pip install "obaaf[keys]" # omit [keys] if you only need assess and check
obaaf --help
Teams. Start with the self-assessment. Open the offline form in a browser, or:
obaaf assess init --output answers.yaml # fill in yes, no or na
obaaf assess score answers.yaml # your tier and what to fix first
Your answers never leave your machine. Then follow the adoption guide.
Build engineers. Check your GitHub Actions workflows and Jenkinsfiles, then install the templates (GitHub Actions; for Jenkins, see Jenkins):
obaaf check path/to/your/repository
obaaf templates install --dest path/to/your/repository --obaaf-repo OWNER/obaaf --obaaf-sha <commit>
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗