oxios_kernel/skill/clawhub/mod.rs
1//! ClawHub marketplace integration.
2//!
3//! Provides a client for searching and downloading skills from the ClawHub
4//! registry, plus an installer that handles zip extraction, origin tracking,
5//! and lockfile management.
6//!
7//! # Directory Layout
8//!
9//! ```text
10//! workspace/
11//! .clawhub/
12//! lock.json ← lockfile (all installed ClawHub skills)
13//! skills/
14//! code-review/
15//! SKILL.md
16//! .clawhub/
17//! origin.json ← per-skill origin metadata
18//! ```
19//!
20//! # Example
21//!
22//! ```ignore
23//! use oxios_kernel::skill::clawhub::{ClawHubInstaller, InstallResult};
24//! use std::path::PathBuf;
25//!
26//! # async fn example() -> anyhow::Result<()> {
27//! let installer = ClawHubInstaller::new(
28//! PathBuf::from("/home/user/.oxios/skills"),
29//! PathBuf::from("/home/user/oxios-workspace"),
30//! None,
31//! );
32//!
33//! let result = installer.install("code-review-helper", None).await?;
34//! # Ok(())
35//! # }
36//! ```
37
38pub mod client;
39pub mod installer;
40pub mod types;
41
42pub use client::{ClawHubClient, DownloadedArchive};
43pub use installer::{ClawHubInstaller, InstallResult, UpdateAvailable, UpdateResult};
44pub use types::{
45 ClawHubLockEntry, ClawHubLockfile, ClawHubMetadata, ClawHubOrigin, ClawHubOwner,
46 ClawHubSearchResult, ClawHubSkillDetail, ClawHubSkillMeta, ClawHubVersion, SearchResponse,
47};