Skip to main content

nyx_agent_core/
lib.rs

1//! Config, state, logging, and persistence surface shared by every binary.
2//!
3//! This crate is published so the `nyx-agent` binary can be installed
4//! from crates.io with versioned internal dependencies. It is an
5//! implementation detail of Nyx Agent, not a stable public API.
6
7pub mod config;
8pub mod event_log;
9pub mod ids;
10pub mod log_init;
11pub mod project;
12pub mod repo;
13pub mod report;
14pub mod run;
15pub mod secrets;
16pub mod state;
17pub mod store;
18pub mod time;
19
20pub use config::{
21    AiConfig, AiRuntime, Config, ConfigError, EnvConfig, EnvPullPolicy, GeneralConfig, NyxConfig,
22    PerformanceConfig, ProjectConfig, RepoConfig, RepoSourceConfig, RunConfig, SandboxBackend,
23    SandboxConfig, ScheduleConfig, TriggersConfig, UiConfig,
24};
25pub use event_log::{run_event_log_path, safe_run_log_segment, RunEventLogWriter};
26pub use log_init::{init as init_logging, json_log_path, LogConfig, LogInitError};
27pub use project::{Project, ProjectId};
28pub use repo::{
29    ingest, parse_git_auth, repo_from_config, GitAuth, IngestError, IngestedRepo, Repo, RepoSource,
30    SnapshotBackend,
31};
32pub use run::{
33    mint_run_id, CrossRepoCallgraphStub, CrossRepoEdge, InconclusiveReason, RepoBundle,
34    RepoOutcome, Run, RunBundle, RunCounts, RunDispatcher, ScanLane, ScanLaneError,
35    WorkspaceHandle,
36};
37pub use secrets::{
38    SecretError, SecretStore, ACCOUNT_AI_ANTHROPIC, ACCOUNT_AI_LOCAL_LLM, DEFAULT_SERVICE,
39    ENV_BACKEND as SECRETS_ENV_BACKEND,
40};
41pub use state::{mint_token, StateDir, StateError};
42pub use store::{Store, StoreError, CURRENT_SCHEMA_VERSION};
43pub use time::now_epoch_ms;