Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .doc-manager/dependencies.json
Original file line number Diff line number Diff line change
Expand Up @@ -4151,7 +4151,7 @@
"docsite/static/images/tui-demo.png": [
"README.md"
],
"https://img.shields.io/github/v/release/arimxyer/pass-cli?label=Version": [
"https://img.shields.io/github/v/release/reyamira/pass-cli?label=Version": [
"01-getting-started/quick-install.md",
"01-getting-started/quick-start.md",
"02-guides/recovery-phrase.md",
Expand All @@ -4169,7 +4169,7 @@
"06-development/scoop.md",
"_index.md"
],
"https://img.shields.io/github/last-commit/arimxyer/pass-cli?path=docs&label=Last%20Updated": [
"https://img.shields.io/github/last-commit/reyamira/pass-cli?path=docs&label=Last%20Updated": [
"01-getting-started/quick-install.md",
"01-getting-started/quick-start.md",
"02-guides/recovery-phrase.md",
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Documentation
url: https://arimxyer.github.io/pass-cli/
url: https://reyamira.github.io/pass-cli/
about: Check the documentation for usage guides and examples
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/question.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ body:
Have a question? We're happy to help!

**Note:** For general usage questions, also check:
- [README](https://github.com/arimxyer/pass-cli#readme)
- [Documentation](https://arimxyer.github.io/pass-cli/)
- [README](https://github.com/reyamira/pass-cli#readme)
- [Documentation](https://reyamira.github.io/pass-cli/)

- type: textarea
id: question
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ jobs:
fi

# Check for absolute GitHub links to own repo (should be relative)
if grep -r "https://github.com/arimxyer/pass-cli/blob/main/docs" docs/ --include="*.md"; then
if grep -r "https://github.com/reyamira/pass-cli/blob/main/docs" docs/ --include="*.md"; then
echo "⚠️ Warning: Found absolute GitHub links (use relative paths instead)"
fi

Expand Down
22 changes: 11 additions & 11 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ archives:
{{- if .Arm }}v{{ .Arm }}{{ end }}

# Files to include in archive (essential docs only)
# Full documentation available at https://arimxyer.github.io/pass-cli/
# Full documentation available at https://reyamira.github.io/pass-cli/
files:
- LICENSE*
- README*
Expand Down Expand Up @@ -104,7 +104,7 @@ changelog:

release:
github:
owner: arimxyer
owner: reyamira
name: pass-cli

# Release name format
Expand All @@ -129,12 +129,12 @@ release:

#### Homebrew (macOS/Linux)
```bash
brew install arimxyer/tap/pass-cli
brew install reyamira/tap/pass-cli
```

#### Scoop (Windows)
```powershell
scoop bucket add arimxyer https://github.com/arimxyer/scoop-bucket
scoop bucket add reyamira https://github.com/reyamira/scoop-bucket
scoop install pass-cli
```

Expand All @@ -150,7 +150,7 @@ release:
```

### Full Changelog
See the full changelog at https://github.com/arimxyer/pass-cli/blob/main/CHANGELOG.md
See the full changelog at https://github.com/reyamira/pass-cli/blob/main/CHANGELOG.md

# Universal Binaries for macOS (combines amd64 and arm64)
universal_binaries:
Expand Down Expand Up @@ -260,15 +260,15 @@ brews:

# Tap repository (GoReleaser will auto-create/update the formula)
repository:
owner: arimxyer
owner: reyamira
name: homebrew-tap
token: "{{ .Env.HOMEBREW_TAP_TOKEN }}"

# Where to place the formula in the tap repo
directory: Formula

# Metadata
homepage: https://github.com/arimxyer/pass-cli
homepage: https://github.com/reyamira/pass-cli
description: "Secure, cross-platform CLI password and API key manager for developers"
license: MIT

Expand Down Expand Up @@ -297,28 +297,28 @@ brews:
• Usage tracking and audit logging

Vault location: ~/.pass-cli/vault.enc
Complete guide: https://github.com/arimxyer/pass-cli/blob/main/docs/GETTING_STARTED.md
Complete guide: https://github.com/reyamira/pass-cli/blob/main/docs/GETTING_STARTED.md

# Scoop bucket (automated manifest creation and updates)
scoops:
- name: pass-cli

# Bucket repository (GoReleaser will auto-create/update the manifest)
repository:
owner: arimxyer
owner: reyamira
name: scoop-bucket
token: "{{ .Env.SCOOP_BUCKET_TOKEN }}"

# Where to place the manifest in the bucket repo
directory: bucket

# Metadata
homepage: https://github.com/arimxyer/pass-cli
homepage: https://github.com/reyamira/pass-cli
description: "Secure, cross-platform CLI password and API key manager for developers"
license: MIT

# Post-install message (array of PowerShell commands)
post_install:
- "Write-Host 'Pass-CLI installed! First-time: Run `pass-cli` for guided setup.' -ForegroundColor Green"
- "Write-Host 'TUI: pass-cli | Health check: pass-cli doctor | Enable keychain: pass-cli keychain enable' -ForegroundColor Cyan"
- "Write-Host 'Guide: https://github.com/arimxyer/pass-cli/blob/main/docs/GETTING_STARTED.md' -ForegroundColor Yellow"
- "Write-Host 'Guide: https://github.com/reyamira/pass-cli/blob/main/docs/GETTING_STARTED.md' -ForegroundColor Yellow"
6 changes: 4 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added
- **`exec` command — inject credentials as environment variables** (#98) — `pass-cli exec` runs a child command with stored credentials passed only through its environment, so the secret never touches a file, the clipboard, or shell history. Supports an explicit, repeatable `--set ENV_NAME=service[:field]` mapping and a convenience form (`pass-cli exec <service> -- <cmd>`) that derives the env name from the service (uppercased, non-alphanumeric → `_`, e.g. `openai-api` → `OPENAI_API`). The `-f/--field` flag selects the field for all mappings (default `password`); a per-mapping `:field` suffix overrides it, allowing two fields of one entry to be injected as separate variables. Everything after `--` is the child argv, and the child's exit code is propagated unchanged. `exec` is read-only: it records no usage and triggers no sync push, making it safe on a hot path.
- **`--offline` global flag** (#104) — run a command fully local: skips both the pre-unlock remote pull and the post-command push (offline changes sync on the next online run).

### Changed
- **`list` is now safe-by-default** (#95, #97) — the default table hides the Username column, because the "username" field can hold sensitive values (card, account, or routing numbers stored as a username). New `--show-usernames` re-adds the column, and new `-q/--quiet` is a shorthand for `--format simple` (bare service names, one per line) that takes precedence over `--format`. `--format json` is unchanged and still emits full metadata including usernames as an explicit, structured opt-in.
- **Sync: content-hash change detection** (#102) — push change-detection now uses a name-encoded zero-byte marker (`vault.enc.<sha256>.synchash`) written next to the vault on each push, replacing the old modtime+size heuristic; older vaults without a marker fall back to the previous behavior.
- **Sync: lower unlock latency by overlapping the pull** (#103) — the pre-unlock remote pull now runs concurrently with the master-password prompt (Tier 1, #109) and with PBKDF2-SHA256 key derivation on keychain unlock (Tier 2, #110). Internal only; no flag or UX change.
- **Sync: cut sync-related startup latency** (#104) — removed the dead `--hash` flag and the "Syncing… done" feedback line. The global `--offline` flag is unaffected and still works.
- **Sync: cut sync-related startup latency** (#104) — dropped the dead `rclone lsjson --hash` flag (no decision used the remote hash; it only added backend hashing cost) and added a transient progress indicator on stderr during the pre-unlock remote probe.
- **Org transfer to `reyamira`** (#112) — the repository and its package sources (Homebrew tap, Scoop bucket, GitHub Pages, badges) moved from `arimxyer` to `reyamira`. Install commands now reference `reyamira/...` (old URLs redirect). The Go module path (`github.com/arimxyer/pass-cli`) is intentionally unchanged.

### Fixed
- **Test: resolve `captureStdout` redeclaration across `cmd` test files** (#99)
Expand Down Expand Up @@ -478,4 +480,4 @@ This changelog follows these principles:
- **Fixed** for any bug fixes
- **Security** for vulnerability fixes

For detailed commit-level changes, see [GitHub Releases](https://github.com/arimxyer/pass-cli/releases).
For detailed commit-level changes, see [GitHub Releases](https://github.com/reyamira/pass-cli/releases).
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Contributing to Pass-CLI
Thank you for your interest in contributing to Pass-CLI! This document provides guidelines for contributing to the project.

![Version](https://img.shields.io/github/v/release/arimxyer/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/arimxyer/pass-cli?label=Last%20Updated)
![Version](https://img.shields.io/github/v/release/reyamira/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/reyamira/pass-cli?label=Last%20Updated)


## Documentation Governance
Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
<p align="center">
<strong>A secure, cross-platform, always-free, and open-source alternative to 1password, bitwarden, etc., Password and API key manager for folks who live in the command line. (CLI + TUI) </strong>
<p align="center">
<img src="https://img.shields.io/github/v/release/arimxyer/pass-cli?label=Version" alt="Version">
<img src="https://img.shields.io/github/last-commit/arimxyer/pass-cli?label=Last%20Updated" alt="Last Updated">
<img src="https://img.shields.io/github/v/release/reyamira/pass-cli?label=Version" alt="Version">
<img src="https://img.shields.io/github/last-commit/reyamira/pass-cli?label=Last%20Updated" alt="Last Updated">
</p>

Pass-CLI is a fast, secure password and API key manager that stores credentials locally with AES-256-GCM encryption. Built for developers who need quick, script-friendly access to credentials without cloud dependencies.

📚 **[View Full Documentation](https://arimxyer.github.io/pass-cli/)** | [Getting Started](docs/01-getting-started/quick-start.md) | [Installation](docs/01-getting-started/quick-install.md) | [Usage Guide](docs/03-reference/command-reference.md)
📚 **[View Full Documentation](https://reyamira.github.io/pass-cli/)** | [Getting Started](docs/01-getting-started/quick-start.md) | [Installation](docs/01-getting-started/quick-install.md) | [Usage Guide](docs/03-reference/command-reference.md)

## Key Features

Expand All @@ -36,13 +36,13 @@ Pass-CLI is a fast, secure password and API key manager that stores credentials

**macOS / Linux (Homebrew)**:
```bash
brew tap arimxyer/homebrew-tap
brew tap reyamira/homebrew-tap
brew install pass-cli
```

**Windows (Scoop)**:
```powershell
scoop bucket add arimxyer https://github.com/arimxyer/scoop-bucket
scoop bucket add reyamira https://github.com/reyamira/scoop-bucket
scoop install pass-cli
```

Expand Down Expand Up @@ -222,7 +222,7 @@ For complete security details, best practices, and migration guides, see [docs/0

```bash
# Clone and build
git clone https://github.com/arimxyer/pass-cli.git
git clone https://github.com/reyamira/pass-cli.git
cd pass-cli
go build -o pass-cli .

Expand Down Expand Up @@ -268,7 +268,7 @@ For more questions and troubleshooting, see [docs/04-troubleshooting/faq.md](doc

## Roadmap

Have a feature request? Open an issue on [GitHub](https://github.com/arimxyer/pass-cli/issues).
Have a feature request? Open an issue on [GitHub](https://github.com/reyamira/pass-cli/issues).

## Contributing

Expand All @@ -280,9 +280,9 @@ This project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE

## Links

- **Releases**: [GitHub Releases](https://github.com/arimxyer/pass-cli/releases)
- **Issues**: [GitHub Issues](https://github.com/arimxyer/pass-cli/issues)
- **Discussions**: [GitHub Discussions](https://github.com/arimxyer/pass-cli/discussions)
- **Releases**: [GitHub Releases](https://github.com/reyamira/pass-cli/releases)
- **Issues**: [GitHub Issues](https://github.com/reyamira/pass-cli/issues)
- **Discussions**: [GitHub Discussions](https://github.com/reyamira/pass-cli/discussions)

---

Expand Down
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ We release security updates for the following versions:

Instead, please report security vulnerabilities through GitHub's private vulnerability reporting:

1. Go to the [Security tab](https://github.com/arimxyer/pass-cli/security)
1. Go to the [Security tab](https://github.com/reyamira/pass-cli/security)
2. Click "Report a vulnerability"
3. Fill out the advisory form with the details below

Expand Down
2 changes: 1 addition & 1 deletion cmd/doctor.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ func runDoctor(cmd *cobra.Command, args []string) error {
// Build check options
opts := health.CheckOptions{
CurrentVersion: version,
GitHubRepo: "arimxyer/pass-cli",
GitHubRepo: "reyamira/pass-cli",
VaultPath: vaultPath,
VaultPathSource: vaultSource,
VaultDir: filepath.Dir(vaultPath),
Expand Down
4 changes: 2 additions & 2 deletions cmd/keychain_status.go
Original file line number Diff line number Diff line change
Expand Up @@ -119,12 +119,12 @@ func runKeychainStatus(cmd *cobra.Command, args []string) error {
} else if meta != nil && !meta.KeychainEnabled {
fmt.Printf("✓ Vault Configuration: Keychain not enabled\n\n")
fmt.Println("System keychain is not accessible. You will be prompted for password on each command.")
fmt.Println("See documentation for keychain setup: https://github.com/arimxyer/pass-cli/blob/main/docs/GETTING_STARTED.md#keychain-integration")
fmt.Println("See documentation for keychain setup: https://github.com/reyamira/pass-cli/blob/main/docs/GETTING_STARTED.md#keychain-integration")
} else {
// No metadata - legacy vault
fmt.Println()
fmt.Println("System keychain is not accessible. You will be prompted for password on each command.")
fmt.Println("See documentation for keychain setup: https://github.com/arimxyer/pass-cli/blob/main/docs/GETTING_STARTED.md#keychain-integration")
fmt.Println("See documentation for keychain setup: https://github.com/reyamira/pass-cli/blob/main/docs/GETTING_STARTED.md#keychain-integration")
}
}

Expand Down
6 changes: 3 additions & 3 deletions cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Examples:
# List all credentials
pass-cli list

For more information, visit: https://github.com/arimxyer/pass-cli`,
For more information, visit: https://github.com/reyamira/pass-cli`,
PersistentPreRunE: checkFirstRun,
Run: runRootCommand,
}
Expand All @@ -67,7 +67,7 @@ func Execute() {

func init() {
// NOTE: Config loading moved to PersistentPreRunE to ensure --config flag is parsed first
// See issue #65: https://github.com/arimxyer/pass-cli/issues/65
// See issue #65: https://github.com/reyamira/pass-cli/issues/65

// T037: Custom flag error handler for migration guidance
rootCmd.SetFlagErrorFunc(func(cmd *cobra.Command, err error) error {
Expand All @@ -81,7 +81,7 @@ Instead, configure your vault location in the config file:
3. Run your command without the --vault flag

For more details, see the migration guide:
https://github.com/arimxyer/pass-cli/blob/main/docs/MIGRATION.md
https://github.com/reyamira/pass-cli/blob/main/docs/MIGRATION.md

Original error: %w`, os.Getenv("HOME"), err)
}
Expand Down
8 changes: 4 additions & 4 deletions docs/01-getting-started/manual-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,18 @@

Manual installation gives you direct control over the binary location and version.

### Download Pre-Built Binaries

Check failure on line 9 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Heading levels should only increment by one level at a time

docs/01-getting-started/manual-install.md:9 MD001/heading-increment Heading levels should only increment by one level at a time [Expected: h2; Actual: h3] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md001.md

1. **Visit the Releases Page**

Go to [GitHub Releases](https://github.com/arimxyer/pass-cli/releases/latest)
Go to [GitHub Releases](https://github.com/reyamira/pass-cli/releases/latest)

2. **Choose Your Platform**

Download the appropriate archive for your system:

| Platform | Architecture | File |
|----------|-------------|------|

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:36 MD060/table-column-style Table column style [Table pipe is missing space to the left for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:29 MD060/table-column-style Table column style [Table pipe is missing space to the right for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:29 MD060/table-column-style Table column style [Table pipe is missing space to the left for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:15 MD060/table-column-style Table column style [Table pipe is missing space to the right for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:15 MD060/table-column-style Table column style [Table pipe is missing space to the left for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md

Check failure on line 20 in docs/01-getting-started/manual-install.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Table column style

docs/01-getting-started/manual-install.md:20:4 MD060/table-column-style Table column style [Table pipe is missing space to the right for style "compact"] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md060.md
| macOS | Intel (x86_64) | `pass-cli_VERSION_darwin_amd64.tar.gz` |
| macOS | Apple Silicon (ARM64) | `pass-cli_VERSION_darwin_arm64.tar.gz` |
| Linux | x86_64 | `pass-cli_VERSION_linux_amd64.tar.gz` |
Expand All @@ -39,7 +39,7 @@
# Download your platform's archive and checksums.txt
# Go to GitHub Releases and download your platform's archive
# Example for Linux amd64:
# 1. Visit: https://github.com/arimxyer/pass-cli/releases/latest
# 1. Visit: https://github.com/reyamira/pass-cli/releases/latest
# 2. Download: pass-cli_VERSION_linux_amd64.tar.gz
# 3. Download: checksums.txt

Expand Down Expand Up @@ -71,7 +71,7 @@
#### Windows (PowerShell)

```powershell
# After downloading from https://github.com/arimxyer/pass-cli/releases/latest
# After downloading from https://github.com/reyamira/pass-cli/releases/latest
# Replace with your downloaded filename
$file = "pass-cli_X.Y.Z_windows_amd64.zip"

Expand Down Expand Up @@ -188,7 +188,7 @@

```bash
# Clone the repository
git clone https://github.com/arimxyer/pass-cli.git
git clone https://github.com/reyamira/pass-cli.git
cd pass-cli

# Checkout specific version (optional)
Expand Down
10 changes: 5 additions & 5 deletions docs/01-getting-started/quick-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,23 @@ toc: true
---
Fast installation using package managers for Pass-CLI across all supported platforms.

![Version](https://img.shields.io/github/v/release/arimxyer/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/arimxyer/pass-cli?path=docs&label=Last%20Updated)
![Version](https://img.shields.io/github/v/release/reyamira/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/reyamira/pass-cli?path=docs&label=Last%20Updated)

## Quick Install

### macOS / Linux

```bash
# Using Homebrew
brew tap arimxyer/homebrew-tap
brew tap reyamira/homebrew-tap
brew install pass-cli
```

### Windows

```powershell
# Using Scoop
scoop bucket add pass-cli https://github.com/arimxyer/scoop-bucket
scoop bucket add pass-cli https://github.com/reyamira/scoop-bucket
scoop install pass-cli
```

Expand All @@ -42,7 +42,7 @@ Homebrew is the recommended installation method for macOS and Linux.

```bash
# Add the Pass-CLI tap
brew tap arimxyer/homebrew-tap
brew tap reyamira/homebrew-tap

# Install Pass-CLI
brew install pass-cli
Expand Down Expand Up @@ -85,7 +85,7 @@ Scoop is the recommended installation method for Windows.

```powershell
# Add the Pass-CLI bucket
scoop bucket add pass-cli https://github.com/arimxyer/scoop-bucket
scoop bucket add pass-cli https://github.com/reyamira/scoop-bucket

# Install Pass-CLI
scoop install pass-cli
Expand Down
2 changes: 1 addition & 1 deletion docs/01-getting-started/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

This 5-minute guide will walk you through initializing your vault and storing your first credential.

![Version](https://img.shields.io/github/v/release/arimxyer/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/arimxyer/pass-cli?path=docs&label=Last%20Updated)
![Version](https://img.shields.io/github/v/release/reyamira/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/reyamira/pass-cli?path=docs&label=Last%20Updated)

## Installation

Expand Down Expand Up @@ -194,7 +194,7 @@
```

With passphrase protection:
- You need BOTH the 24 words AND the passphrase to recover

Check failure on line 197 in docs/01-getting-started/quick-start.md

View workflow job for this annotation

GitHub Actions / Validate Markdown

Lists should be surrounded by blank lines

docs/01-getting-started/quick-start.md:197 MD032/blanks-around-lists Lists should be surrounded by blank lines [Context: "- You need BOTH the 24 words A..."] https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md032.md
- Store the passphrase separately from your recovery phrase
- If you lose either, recovery is impossible

Expand Down
Loading
Loading