Skip to main content

A CLI for securely fetching secrets from the NoirNote application.

Project description

NoirNote CLI

The official Command Line Interface for NoirNote. Securely access your team's secrets, notes, and automation scripts directly from your terminal.

Installation

Ensure you have Python 3.8+ installed.

pip install noirnote-cli

🚀 Quick Start (Recommended)

For developers and personal use, the recommended workflow is to use the Interactive UI. This provides a convenient, menu-driven interface to navigate workspaces, view notes, and execute scripts without remembering individual commands.

1. Authenticate

First, log in to decrypt your Master Key. Your keys are securely stored in your OS native keychain (e.g., macOS Keychain, Secret Service) for subsequent sessions.

noirnote-cli login --email you@example.com

2. Launch the UI

Once logged in, start the interactive dashboard:

noirnote-cli ui

Command Line Reference

If you prefer direct commands or need to script specific actions, you can use the manual command interface.

Workspace Management

Switch between your personal and team workspaces.

# List all available workspaces
noirnote-cli workspace list

# Switch to a team workspace by its name
noirnote-cli workspace use "Production SRE Team"

# Switch to your personal workspace by ID
noirnote-cli workspace use "abCdeFgHijkLmnoPqrsTuvWxYz12345"

Listing Resources

noirnote-cli ls scripts   # List automation scripts
noirnote-cli ls notes     # List encrypted notes
noirnote-cli ls secrets   # List Vault secrets

Retrieving Data

Retrieve and decrypt content to standard output.

# Get a note by name or ID
noirnote-cli get note "Post-Incident Review: 2025-05-10"

# Get a secret by name (Interactive mode only)
noirnote-cli get secret "Production API Token"

Script Execution

Execute automation scripts stored in your NoirNote library.

# Execute a specific script by name, skipping confirmation
noirnote-cli exec --name "Restart Staging Webserver" --yes

Unattended Mode (CI/CD)

For automated environments (like GitHub Actions or Jenkins), use API Key authentication.

  1. Configure: Stores the API key in a local configuration file.

    noirnote-cli configure --api-key "nak_..." --api-secret "nsk_..."
    
  2. Usage: When in API Key mode, get secret requires no arguments. It fetches the specific secret bound to the key and outputs only the raw value.

    # Example: Exporting a secret to an env var
    export NPM_TOKEN=$(noirnote-cli get secret)
    

To remove credentials (for either mode):

noirnote-cli logout

Configuration Files

The CLI stores configuration and state in the following locations:

  • ~/.config/noirnote-cli/: Stores CLI-specific config, including API credentials (api_creds.json) and the active workspace ID.
  • ~/.noirnote/: Used by the NoirNote desktop application to store local user data. The CLI reads from this directory during the initial login process.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

noirnote_cli-0.1.0.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

noirnote_cli-0.1.0-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

Details for the file noirnote_cli-0.1.0.tar.gz.

File metadata

  • Download URL: noirnote_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for noirnote_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 591d1acbac46f2857119a1b8d313b6c5c2283c74ebdfa210e76909e80cece87e
MD5 89952bbe7cce913d1f339d6af5fe41c7
BLAKE2b-256 010fb8788a360c5d977a151483e8df2d59f9d290b9a3dcd3a9e488770a87047e

See more details on using hashes here.

File details

Details for the file noirnote_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: noirnote_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for noirnote_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d056533313aa2f059e74913d9dbf6e784743b60937aa05aa8146d17c2df0112
MD5 9d997f20c32aa2af40ebdc30925447fe
BLAKE2b-256 55a5a5bc1c5c91e78ffd6d95244560b4ea2587b33f9e58f261a19f1960292d46

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page