aws-samples / aws-samples/sample-autonomous-cloud-coding-agents
RFC: Signed attestation for repo-local agent instruction files
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 146
- Forks
- 46
- Merge moyen
- 3 j 10 h
- PR mergées (30 j)
- 24
Description
Primary area
** Cross-cutting / multiple
Related issue or feature request
Complements roadmap MCP supply-chain controls and Untrusted hydration content boundaries.
Summary
Introduce optional cryptographic attestation for trusted instruction sources (AGENTS.md, .claude/rules/, workflow prompt fragments) so the agent runtime loads only files signed by an approved publisher key. Unsigned or tampered files are rejected or downgraded to untrusted reference text.
Use case and motivation
Prompt injection via markdown instruction files is structural: any file the agent reads may contain adversarial directives. Policy-at-the-LLM-layer is bypassable. High-trust repos need assurance that harness content was not substituted on a feature branch or via compromised commit access.
Proposal
Trust model
- Operator publishes org signing key (KMS or offline) referenced in Blueprint.
- Trusted paths list per repo; each file has sidecar signature
path.sigor embedded manifest in.abca/trust-manifest.json. - Agent bootstrap verifies signature before merging rules into context; failures fail-closed for high-trust mode, warn-only for standard mode.
UX before / after
Before: Agent loads any committed markdown rules.
After: Blueprint instruction_trust_mode: strict|warn|off; strict blocks task start on verification failure.
Phases
- Manifest format + verification library in agent (
policy.py/ loader). - CLI
bgagent trust signfor local dev ergonomics. - CI check optional in contributor guide.
Out of scope
- Signing every source code file.
- Replacing Cedar tool-call policy.
- Kernel-level enforcement (see runtime telemetry RFC).
Potential challenges
- Key rotation and manifest updates on forked PRs from external contributors.
- UX friction for small teams—must default to
off. - Parity between Python agent and any future TypeScript dry-run path.
Dependencies and integrations
repo-config,REPO_ONBOARDING.md,SECURITY.md- KMS for managed keys in AWS deployments
Alternative solutions
- Git commit signature verification only — does not protect against malicious maintainer commits on branch.
- Hash allowlist in Blueprint — brittle without signing pipeline.
Note: Non-triaged RFCs may not get timely review. PRs on non-triaged issues might not be accepted.
- RFC PR:
- Approved by:
- Reviewed by:
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par examiner les points d’intégration proposés dans policy.py/loader, ainsi que repo-config, REPO_ONBOARDING.md et SECURITY.md. Clarifiez le format du manifeste, le comportement de la vérification, les modes de confiance de Blueprint et la portée des trois phases proposées avant l’implémentation. Le travail est considéré comme terminé lorsque le RFC dispose d’une conception approuvée et d’un chemin d’implémentation dont le périmètre est explicitement défini.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- aws, python, typescript
- Domaine
- security
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Calme
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100