Expand description
apcore-cli — Command-line interface for apcore modules.
Automatic MCP Server & OpenAI Tools Bridge for apcore — zero code changes required.
Library root: re-exports the user-facing public API items. Protocol spec: FE-01 through FE-13 plus SEC-01 through SEC-04.
See the apcore-cli docs repo for the authoritative feature spec and tech design.
Re-exports§
pub use approval::check_approval;pub use approval::ApprovalDeniedError;pub use approval::ApprovalError;pub use approval::ApprovalResult;pub use approval::ApprovalStatus;pub use approval::ApprovalTimeoutError;pub use approval::CliApprovalHandler;pub use builtin_group::ApcliConfig;pub use builtin_group::ApcliGroup;pub use builtin_group::ApcliMode;pub use cli::build_module_command;pub use cli::build_module_command_with_limit;pub use cli::collect_input;pub use cli::collect_input_from_reader;pub use cli::dispatch_module;pub use cli::get_docs_url;pub use cli::is_verbose_help;pub use cli::set_audit_logger;pub use cli::set_docs_url;pub use cli::set_executables;pub use cli::set_verbose_help;pub use cli::validate_module_id;pub use builtin_group::APCLI_SUBCOMMAND_NAMES;pub use builtin_group::RESERVED_GROUP_NAMES;pub use config::ConfigResolver;pub use discovery::cmd_describe;pub use discovery::cmd_list;pub use discovery::cmd_list_enhanced;pub use discovery::register_discovery_commands;pub use discovery::ApCoreRegistryProvider;pub use discovery::DiscoveryError;pub use discovery::ListOptions;pub use discovery::RegistryProvider;pub use display_helpers::get_cli_display_fields;pub use display_helpers::get_display;pub use exposure::ExposureFilter;pub use fs_discoverer::FsDiscoverer;pub use init_cmd::handle_init;pub use init_cmd::init_command;pub use output::format_exec_result;pub use output::format_module_detail;pub use output::format_module_list;pub use output::resolve_format;pub use ref_resolver::resolve_refs;pub use schema_parser::extract_help_with_limit;pub use schema_parser::reconvert_enum_values;pub use schema_parser::schema_to_clap_args;pub use schema_parser::schema_to_clap_args_with_limit;pub use schema_parser::BoolFlagPair;pub use schema_parser::SchemaArgs;pub use schema_parser::SchemaParserError;pub use schema_parser::HELP_TEXT_MAX_LEN;pub use schema_parser::RESERVED_PROPERTY_NAMES;pub use security::AuditLogger;pub use security::AuthProvider;pub use security::AuthenticationError;pub use security::ConfigDecryptionError;pub use security::ConfigEncryptor;pub use security::ModuleExecutionError;pub use security::ModuleNotFoundError;pub use security::Sandbox;pub use security::SchemaValidationError;pub use shell::build_program_man_page;pub use shell::cmd_completion;pub use shell::cmd_man;pub use shell::completion_command;pub use shell::has_man_flag;pub use shell::ShellError;pub use system_cmd::SYSTEM_COMMANDS;
Modules§
- approval
- builtin_
group - Built-in Command Group (FE-13).
- cli
- config
- discovery
- display_
helpers - exposure
- Module Exposure Filtering (FE-12).
- fs_
discoverer - init_
cmd - output
- ref_
resolver - schema_
parser - security
- shell
- strategy
- system_
cmd - validate
Constants§
- APCLI_
ALWAYS_ REGISTERED - Subcommand names that are registered regardless of the resolved visibility
mode’s include/exclude filter.
execis the documented always-registered escape hatch (spec §4.9) so downstream callers can always invoke modules by ID even when the apcli group is configured with a minimal surface. - EXIT_
ACL_ DENIED - EXIT_
APPROVAL_ DENIED - EXIT_
CONFIG_ BIND_ ERROR - EXIT_
CONFIG_ MOUNT_ ERROR - EXIT_
CONFIG_ NAMESPACE_ RESERVED - EXIT_
CONFIG_ NOT_ FOUND - EXIT_
ERROR_ FORMATTER_ DUPLICATE - EXIT_
INVALID_ INPUT - EXIT_
MODULE_ EXECUTE_ ERROR - EXIT_
MODULE_ NOT_ FOUND - EXIT_
SCHEMA_ CIRCULAR_ REF - EXIT_
SCHEMA_ VALIDATION_ ERROR - EXIT_
SIGINT - EXIT_
SUCCESS
Functions§
- register_
apcli_ subcommands - Central dispatcher for the 13 canonical apcli subcommands. Walks a fixed
registration table and honors
ApcliGroup::resolve_visibilityfor include/exclude modes. Under"all"or"none"all 13 subcommands are registered (spec §4.9 registration rules table); under"include"only listed subcommands +APCLI_ALWAYS_REGISTERED; under"exclude"all except listed +APCLI_ALWAYS_REGISTERED.