1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
//! Skill HTTP Server - High-performance REST API with streaming
//!
//! This crate provides a complete HTTP REST API for the Skill Engine.
//!
//! ## Features
//!
//! - **Skills Management**: List, install, uninstall skills
//! - **Tool Execution**: Execute skill tools with arguments
//! - **Search**: Semantic search across skills and tools
//! - **Configuration**: Runtime configuration management
//! - **Health Checks**: Monitor server and component health
//!
//! ## API Endpoints
//!
//! ### Skills
//! - `GET /api/skills` - List all installed skills
//! - `POST /api/skills` - Install a new skill
//! - `GET /api/skills/{name}` - Get skill details
//! - `DELETE /api/skills/{name}` - Uninstall a skill
//!
//! ### Execution
//! - `POST /api/execute` - Execute a tool
//! - `GET /api/executions` - List execution history
//! - `GET /api/executions/{id}` - Get execution details
//!
//! ### Search
//! - `POST /api/search` - Semantic search for skills/tools
//! - `GET /api/search/config` - Get search configuration
//! - `PUT /api/search/config` - Update search configuration
//!
//! ### Configuration
//! - `GET /api/config` - Get application configuration
//! - `PUT /api/config` - Update application configuration
//!
//! ### Health
//! - `GET /api/health` - Health check
//! - `GET /api/version` - Version information
//!
//! ## Example
//!
//! ```ignore
//! use skill_http::{HttpServer, HttpServerConfig};
//!
//! #[tokio::main]
//! async fn main() -> anyhow::Result<()> {
//! let config = HttpServerConfig {
//! host: "127.0.0.1".to_string(),
//! port: 3000,
//! enable_cors: true,
//! enable_tracing: true,
//! };
//!
//! let server = HttpServer::with_config(config)?;
//! server.run().await
//! }
//! ```
pub use ;
pub use *;
use Result;
/// Start the HTTP server with default configuration (API only)
pub async
/// Start the HTTP server with embedded web UI
pub async