Skip to main content

Module project

Module project 

Source

Structs§

AiDefaults
Default capabilities granted to AI members by joy ai init. Loaded from ai-defaults.capabilities in project.defaults.yaml.
AiDelegationEntry
A stable per-(human, AI) delegation key (ADR-033). The matching private key lives off-repo at ~/.local/state/joy/delegations/<project>/<ai-member>.key.
Attestation
Per-member attestation: a signature by a manage member over a stable subset of the member’s fields (email, capabilities, enrollment_verifier). Verified locally against project.yaml by looking up the attester’s verify_key in the same file. The founder is the sole member allowed to have no attestation in a fresh project; once any additional manage member is added, that member implicitly reverse-attests the founder.
AttestationSignedFields
The exact subset of a member’s state covered by the attestation signature. Changes to any of these fields invalidate the signature.
CapabilityConfig
Docs
Configurable paths to the project’s reference documentation, relative to the project root. Used by joy ai init to support existing repos with non-default doc layouts and read by AI tools via joy project get docs.<key>.
Member
ModeDefaults
Interaction mode defaults: a global default plus optional per-capability overrides. Deserializes from flat YAML like: { default: collaborative, implement: autonomous }.
Project

Enums§

MemberCapabilities
ModeSource
Source of a resolved interaction mode.

Functions§

derive_acronym
Derive an acronym from a project name. Takes the first letter of each word, uppercase, max 4 characters. Single words use up to 3 uppercase characters.
is_ai_member
Check whether a member ID represents an AI member.
resolve_mode
Resolve the effective interaction mode for a given capability.
validate_acronym
Validate and normalize a project acronym.