devlore-cli

module
v0.1.0-dev.20260214204403 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2026 License: MIT

README

devlore-cli

Monorepo for the lore and writ command-line tools.

  • lore — The tribal knowledge package deployer
  • writ — Portable environment orchestrator

Building

make build          # Build both binaries to bin/
make lore           # Build lore only
make writ           # Build writ only

Installing

make install        # Install binaries to ~/.local/bin (or GOBIN)
make install-all    # Install binaries, completions, and man pages

Self-Install

Use self-install to install binaries, man pages, and shell completions:

# Install to ~/.local
writ self-install --prefix=~/.local
lore self-install --prefix=~/.local

# Specify shells explicitly (auto-detects by default)
writ self-install --prefix=~/.local --shell bash --shell zsh

# Man pages
lore man                          # Display with pager
writ man deploy                   # Display man page for subcommand

XDG Compliance

All paths follow the XDG Base Directory Specification:

Artifact Default Path
Shared config $XDG_CONFIG_HOME/devlore/config.yaml
Tool configs $XDG_CONFIG_HOME/devlore/config.d/{writ,lore}.yaml
Registry cache $XDG_CACHE_HOME/devlore/registry/
Downloads cache $XDG_CACHE_HOME/devlore/downloads/
Writ layers $XDG_DATA_HOME/devlore/writ/layers/
Writ receipts $XDG_STATE_HOME/devlore/writ/receipts/
Lore receipts $XDG_STATE_HOME/devlore/lore/receipts/
Man pages <prefix>/share/man/man1/
Bash completions <prefix>/share/bash-completion/completions/
Zsh completions <prefix>/share/zsh/site-functions/
Fish completions <prefix>/share/fish/vendor_completions.d/
PowerShell completions <prefix>/share/powershell/completions/

Project Structure

devlore-cli/
├── cmd/
│   ├── lore/main.go           # lore entry point
│   └── writ/main.go           # writ entry point
├── internal/
│   ├── cli/                   # Shared CLI infrastructure
│   │   ├── man.go             # man command
│   │   ├── selfinstall.go     # self-install command
│   │   ├── version.go         # version command
│   │   └── xdg.go             # XDG path helpers
│   ├── lore/                  # Lore-specific commands
│   └── writ/                  # Writ-specific commands
├── docs/                      # Generated documentation
├── Makefile
└── go.mod

License

MIT License. See LICENSE for details.

Directories

Path Synopsis
cmd
bindgen command
bindgen generates Starlark bindings from CLI metadata.
bindgen generates Starlark bindings from CLI metadata.
docgen command
Command docgen generates Docker-style CLI reference documentation for the writ and lore commands.
Command docgen generates Docker-style CLI reference documentation for the writ and lore commands.
indexgen command
Command gen-index generates index.yaml manifests for knowledge domains in the devlore-registry.
Command gen-index generates index.yaml manifests for knowledge domains in the devlore-registry.
lore command
Command lore is the tribal knowledge package deployer.
Command lore is the tribal knowledge package deployer.
writ command
Command writ is the portable environment orchestrator.
Command writ is the portable environment orchestrator.
internal
bindgen
Package bindgen provides tools for generating Starlark bindings from CLI metadata.
Package bindgen provides tools for generating Starlark bindings from CLI metadata.
bindgen/cobra
Package cobra extracts command metadata from Go source files using Cobra.
Package cobra extracts command metadata from Go source files using Cobra.
cli
config
Package config provides centralized configuration for the devlore ecosystem.
Package config provides centralized configuration for the devlore ecosystem.
console
Package console provides an interactive terminal UI for guided workflows.
Package console provides an interactive terminal UI for guided workflows.
credentials
Package credentials provides secure credential storage using native OS keychains (macOS Keychain, Linux libsecret, Windows Credential Manager) with file-based fallback.
Package credentials provides secure credential storage using native OS keychains (macOS Keychain, Linux libsecret, Windows Credential Manager) with file-based fallback.
e2e
Package e2e provides end-to-end testing infrastructure for LLM-based operations.
Package e2e provides end-to-end testing infrastructure for LLM-based operations.
execution
Package execution provides the core execution graph primitives and executor shared by writ (configuration deployment) and lore (package management).
Package execution provides the core execution graph primitives and executor shared by writ (configuration deployment) and lore (package management).
host
Package host provides platform-specific bindings for lore's Starlark runtime.
Package host provides platform-specific bindings for lore's Starlark runtime.
lore
Package lore implements the lore CLI commands.
Package lore implements the lore CLI commands.
lore/onboard
Package onboard implements the multi-phase onboarding pipeline for lore.
Package onboard implements the multi-phase onboarding pipeline for lore.
lorepackage
Package registry provides the client interface for accessing the devlore registry.
Package registry provides the client interface for accessing the devlore registry.
manifest
Package manifest provides loading and validation for packages-manifest files.
Package manifest provides loading and validation for packages-manifest files.
model
Package model provides LLM provider configuration and client implementations.
Package model provides LLM provider configuration and client implementations.
pwsh
Package pwsh provides a persistent PowerShell session for lore.
Package pwsh provides a persistent PowerShell session for lore.
shell
Package shell provides audited command execution for lore.
Package shell provides audited command execution for lore.
signing
Package signing provides cryptographic signing for receipts.
Package signing provides cryptographic signing for receipts.
starlark
Package starlark provides the Starlark runtime and host bindings for lore.
Package starlark provides the Starlark runtime and host bindings for lore.
starlark/platform
Package platform provides platform-specific plan bindings for the Starlark runtime.
Package platform provides platform-specific plan bindings for the Starlark runtime.
tools/docgen
Package docgen generates Docker-style CLI reference documentation in Markdown with Astro frontmatter from Cobra command trees.
Package docgen generates Docker-style CLI reference documentation in Markdown with Astro frontmatter from Cobra command trees.
writ
Package writ implements the writ CLI commands.
Package writ implements the writ CLI commands.
writ/identity
Package identity provides age identity loading for writ.
Package identity provides age identity loading for writ.
writ/reconcile
Package reconcile provides full-stack drift detection and repair for writ deployments.
Package reconcile provides full-stack drift detection and repair for writ deployments.
writ/secrets
Package secrets handles encryption/decryption operations via SOPS.
Package secrets handles encryption/decryption operations via SOPS.
writ/segment
Package segment provides segment-based directory matching for writ.
Package segment provides segment-based directory matching for writ.
writ/tree
Package tree provides deployment tree building for writ.
Package tree provides deployment tree building for writ.
Package schema provides embedded JSON schemas and default configs for the devlore ecosystem.
Package schema provides embedded JSON schemas and default configs for the devlore ecosystem.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL