opena2a config

View and manage CLI preferences.

Usage

opena2a config <subcommand>

Subcommands

SubcommandDescription
showDisplay current configuration as JSON.
contribute onEnable community data contributions (used by baselines command).
contribute offDisable community data contributions.
llm onEnable LLM-powered features (natural language input, semantic analysis).
llm offDisable LLM-powered features.

Description

Manages persistent CLI preferences stored in the local OpenA2A configuration file. Two toggles are available: contribute controls whether the baselines command can submit data to the OpenA2A Registry, and llm controls whether LLM-powered features (such as natural language input and semantic analysis) are active.

Both settings default to off. No data is transmitted and no external API calls are made until explicitly enabled.

Examples

# Show current configuration
opena2a config show
# Enable community data contributions
opena2a config contribute on
# Enable LLM-powered features
opena2a config llm on
# Disable both features
opena2a config contribute off
opena2a config llm off

Config File Location

The configuration is stored in a JSON file at ~/.opena2a/config.json. This file is created automatically on first use and persists across projects. All settings are user-scoped (not project-scoped), so enabling a feature applies globally to all repositories you work in.

# Default config file location
~/.opena2a/config.json

# Contents after enabling both features
{
  "contribute": true,
  "llm": true
}

Expected Output

$ opena2a config show

OpenA2A CLI Configuration
==========================
Config file: ~/.opena2a/config.json

  contribute:  off   (community data contributions disabled)
  llm:         off   (LLM-powered features disabled)

$ opena2a config contribute on
Community data contributions enabled.

$ opena2a config llm on
LLM-powered features enabled.
Natural language input and semantic analysis are now active.

Privacy and Data Handling

Both toggles default to off. No data leaves your machine and no external API calls are made until you explicitly enable them. The contribute toggle controls only the baselines command, which submits anonymized package metrics (file count, size, dependency count) to the OpenA2A Registry. No source code or file contents are ever transmitted. The llm toggle enables natural language query resolution via Claude Haiku, which sends only the user query text -- no project files or source code.

Error Handling

If the config file does not exist, config show displays the default values (both off). The contribute and llm subcommands accept only on or offas arguments -- any other value produces a usage error with the correct syntax. If the config directory cannot be created (permission issue), the command reports the error with the expected path.

Related Commands