Skip to main content

Crate pakx_core

Crate pakx_core 

Source
Expand description

Manifest, lockfile, resolver, and installer logic for pakx.

This crate is the functional core: parsing, validation, and pure logic. Filesystem and network side effects live in pakx-agents and pakx-registry-client, respectively.

Re-exports§

pub use atomic_write::atomic_write;
pub use credentials::Credentials;
pub use credentials::CredentialsError;
pub use credentials::Entry as CredentialEntry;
pub use credentials::DEFAULT_REGISTRY_URL;
pub use errors::LockfileError;
pub use errors::ManifestError;
pub use http_client::http_client;
pub use http_client::http_client_with_timeout;
pub use http_client::DEFAULT_CONNECT_TIMEOUT;
pub use http_client::DEFAULT_REQUEST_TIMEOUT;
pub use http_client::UPLOAD_REQUEST_TIMEOUT;
pub use install::compute_integrity;
pub use install::Command;
pub use install::Hook;
pub use install::McpServer;
pub use install::McpTransport;
pub use install::Prompt;
pub use install::Skill;
pub use install::SkillFile;
pub use install::Subagent;
pub use lockfile::parse_lockfile;
pub use lockfile::read_from as read_lockfile_from;
pub use lockfile::write_lockfile;
pub use lockfile::write_to as write_lockfile_to;
pub use lockfile::Integrity;
pub use lockfile::LockEntry;
pub use lockfile::Lockfile;
pub use lockfile::RegistrySource;
pub use lockfile::LOCKFILE_VERSION;
pub use lockfile::REGISTRY_SOURCES;
pub use manifest::add_dep;
pub use manifest::add_shorthand;
pub use manifest::delete_value as manifest_delete_value;
pub use manifest::get_value as manifest_get_value;
pub use manifest::get_value_json as manifest_get_value_json;
pub use manifest::parse_manifest;
pub use manifest::parse_path as manifest_parse_path;
pub use manifest::read_from as read_manifest_from;
pub use manifest::remove_shorthand;
pub use manifest::sections_containing;
pub use manifest::sections_containing_id;
pub use manifest::set_value as manifest_set_value;
pub use manifest::split_shorthand;
pub use manifest::update_shorthand;
pub use manifest::validate_sponsors;
pub use manifest::write_manifest;
pub use manifest::write_to as write_manifest_to;
pub use manifest::AddOutcome;
pub use manifest::AgentId;
pub use manifest::DeleteOutcome;
pub use manifest::DepSpec;
pub use manifest::Dependencies;
pub use manifest::GitSpec;
pub use manifest::Manifest;
pub use manifest::PackageType;
pub use manifest::PathError as ManifestPathError;
pub use manifest::PathSeg as ManifestPathSeg;
pub use manifest::RegistrySpec;
pub use manifest::RemoveOutcome;
pub use manifest::Sponsor;
pub use manifest::SponsorError;
pub use manifest::SponsorKind;
pub use manifest::StringSpec;
pub use manifest::UpdateOutcome;
pub use manifest::KNOWN_AGENT_IDS;
pub use manifest::MAX_SPONSORS;
pub use manifest::PACKAGE_TYPES;
pub use validation::validate_package_name;
pub use validation::validate_version;
pub use validation::ValidationError;
pub use validation::MAX_VERSION_LEN;

Modules§

atomic_write
Crash-safe write helper used by agents.lock, agents.yml, and the federated-registry response cache.
credentials
Credential store for pakx login / pakx publish / pakx whoami.
errors
Typed error variants for parsing and validating manifests / lockfiles.
http_client
Shared reqwest::Client factory with project-wide timeouts.
install
Resolved install payloads — what an adapter actually writes to disk.
lockfile
Lockfile types and (de)serialization for agents.lock.
manifest
Manifest types and (de)serialization for agents.yml.
validation
Shape guards for untrusted strings that ride in URL path segments against the pakx-registry backend.

Constants§

VERSION