KeiSeiKit-1.0/_primitives/_rust/kei-forge/src/main.rs
Parfii-bot a4e667de10 KeiSeiKit-public — clean state
Single-commit clean baseline after security scrub of niche-tells,
project codenames, internal jargon, and contributor-email leaks.

Contents:
- 100 Rust crates (_primitives/_rust/)
- 37 agent manifests (_manifests/) + generated specs (_generated/)
- 67 user-invocable skills (skills/)
- 33 hooks (hooks/)
- Composition blocks (_blocks/)
- Documentation (docs/, README.md)
- TS adapter packages (_ts_packages/)
- Assembler (_assembler/)
- Roles (_roles/)
- Templates (_templates/)
- Forgejo CI (.forgejo/)

Author: Denis Parfionovich <info@greendragon.info>

License: see LICENSE.
2026-05-01 12:09:03 +08:00

25 lines
806 B
Rust

//! kei-forge binary entry point.
//!
//! Binds axum to `127.0.0.1:8747` and serves the atom-scaffolding wizard.
//! Port 8747 chosen for mnemonic `"TK4S"` (KT + 4 streams) and low conflict
//! probability — not registered with IANA, outside common dev-tool ranges.
use kei_forge::server;
use std::net::SocketAddr;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
tracing_subscriber::fmt()
.with_max_level(tracing::Level::INFO)
.init();
let addr: SocketAddr = "127.0.0.1:8747".parse()?;
let app = server::app();
let listener = tokio::net::TcpListener::bind(addr).await?;
println!("keisei forge ready — open http://localhost:8747/");
tracing::info!(%addr, "kei-forge listening");
axum::serve(listener, app).await?;
Ok(())
}