rfcs README

The project's README from github.com/astrid-runtime/rfcs. As one markdown file: README.md.

Astrid RFCs

License: MIT OR Apache-2.0

Design proposals for changes to Astrid's kernel-to-user-space contract.

RFCs govern any substantial change to the contract surface between the kernel and user-space: the host ABI, IPC protocol, capability model, manifest schema, VFS semantics, capsule interface standards, and SDK public API. They are the authoritative specification - implementations conform to them, not the other way around.

When you need an RFC

Process

  1. Fork this repo and copy 0000-template.md to text/0000-my-feature.md.
  2. Fill in the RFC. Focus on motivation and the reference-level spec.
  3. Open a pull request. Use the filename 0000-my-feature.md in the PR.
  4. Discussion happens on the PR. Revise as needed.
  5. When consensus is reached, a maintainer assigns the next sequential RFC number, renames the file to text/NNNN-my-feature.md, and merges.
  6. Implementation proceeds in astrid-sdk (types behind feature flags) and reference capsules.

Lifecycle

SDK integration

Each RFC maps to an astrid-sdk feature flag:

# Individual RFC types
astrid-sdk = { version = "0.2", features = ["rfc-1"] }

# All RFC types
astrid-sdk = { version = "0.2", features = ["all-rfcs"] }

Index

RFC Title Status
0001 RFC Process Active

License

Dual-licensed under MIT and Apache 2.0.

Copyright (c) 2025-2026 Joshua J. Bouw and Unicity Labs.

rfcs (astrid-runtime/rfcs)

Searching Database…

4.2K ·GitHub
What is this?This repository holds RFCs (design proposals) that define any substantial change to the contract between Astrid's kernel and user-space, covering the host ABI, IPC protocol, capability model, manifest schema, VFS semantics, capsule interface standards, and the SDK's public API.
Is this an actual software library, or just a set of design documents?It's purely a set of markdown specification documents and a governance process, not runnable code — the README states that implementations must conform to the RFCs, not the other way around.
How do I propose a change via an RFC?Fork the repo, copy '0000-template.md' to 'text/0000-my-feature.md', fill in the motivation and reference-level spec, and open a pull request using that filename for discussion.
What kind of changes actually require writing an RFC?Anything touching the syscall table in astrid-sys, IPC topic/payload schemas, capability token format, the Capsule.toml manifest schema, VFS path resolution, new capsule interface standards, or breaking changes to the astrid-sdk public API.
Does merging an RFC mean the feature is ready to use?No — a merged RFC is only 'Active'; its types still need to be implemented behind feature flags in astrid-sdk and in reference capsules before it becomes 'Final' and stable.
How many RFCs exist right now?Just one — RFC 0001, 'RFC Process', currently marked as Active.
What do the RFC lifecycle stages mean?Draft means the PR is open for discussion, Active means it's merged and being implemented in astrid-sdk, Final means it's implemented and stable, Withdrawn means it was closed without merging, and Superseded means a newer RFC replaced it.
What is a 'capsule' in Astrid?Based on the referenced schemas, a capsule appears to be Astrid's unit of user-space code, described by a Capsule.toml manifest and conforming to defined capsule interface standards like tool schemas and cross-capsule contracts.
How does an accepted RFC actually reach the SDK?Once consensus is reached and the RFC is merged, a maintainer assigns it a sequential number, and implementation then proceeds in astrid-sdk behind feature flags plus in reference capsules.
What are similar projects?book, EIPs, spec, design, bips, spec, api-guidelines, swift-evolution
Size
0.4 MB
Stars
4.2K
Updated
CommitJul 13
Age
7mo
Commits · 90 Days