# Vault1984 — Research Report

*Generated: 2026-02-28*

---

## Task 1: Chrome Extension Password Manager — Top User Complaints

### Research Sources
- r/1Password, r/Bitwarden, r/Lastpass, r/Dashlane (Reddit threads 2023–2026)
- 1Password Community forums (1password.community)
- Chrome Web Store reviews (via chrome-stats.com)
- Search: complaint patterns across all four major extensions

---

### Top 10 Universal Complaints (cross-PM)

---

#### 1. Extension slow/unresponsive — "Loading..." forever
**Severity:** 🔴 Very High

**What:** Extension popup opens to grey spinner or "Loading..." that never resolves. Clicking the icon does nothing, or crashes with "has crashed." On M1/M2 Macs with 1Password 8, users report waiting 5–15 seconds. 1Password community thread (July 2025): "1Password - Password Manager has crashed" — autofill stops working entirely.

**Frequency:** Extremely common for 1Password (multiple threads per month in 2025), intermittent for Bitwarden.

**Does Vault1984 solve it?**
Yes. Vault1984 is a local binary with no cloud sync delay, no Electron overhead. Extension calls localhost:8765 directly. Response time is bounded by local SQLite query, not external auth sessions. Eliminates the "cloud auth timeout" root cause.

---

#### 2. Autofill doesn't trigger / fills wrong field
**Severity:** 🔴 Very High

**What:** Extension fails to detect username/password fields, fills into wrong input (e.g., fills username into search bar), or injects credentials into OTP fields. Common on SPAs (React, Next.js), iframe-heavy sites, non-standard form structures.

**Frequency:** Nearly every subreddit has a "why doesn't it autofill on [site]?" thread weekly.

**Does Vault1984 solve it?**
Partially. Vault1984 has LLM-powered field mapping (/api/ext/map). Instead of CSS selector heuristics, the extension asks the LLM "which field on this page is the username field?" — fundamentally better than regex/attribute matching. Real competitive advantage.

---

#### 3. Extension breaks after browser update
**Severity:** 🔴 High

**What:** Chrome 127, 132, and others broke autofill for multiple PMs simultaneously. Users reinstall, clear session, re-authenticate. Recurring every few months.

**Frequency:** High — peaks after each Chrome major release.

**Does Vault1984 solve it?**
Somewhat. Vault1984's extension is minimal — only fetch() calls to localhost, no native messaging host dependency like 1Password 8 requires. Fewer integration points = fewer Chrome API breakage surfaces.

---

#### 4. Requires desktop app to be running (1Password-specific)
**Severity:** 🔴 High for 1Password users

**What:** 1Password 8 requires the desktop app running AND connected. If the app is asleep, needs biometric, or updates itself — the extension fails. "Why does a browser extension need a desktop app?"

**Frequency:** Extremely common — structural issue with 1Password 8's architecture. #1 complaint in r/1Password 2024–2025.

**Does Vault1984 solve it?**
Yes — completely. Vault1984 runs as a standalone binary service. No desktop app, no IPC bridge, no native messaging.

---

#### 5. Popup/inline icon interferes with form input
**Severity:** 🟡 Medium-High

**What:** Autofill suggestion overlay covers UI elements, blocks "Forgot password" links, or triggers on unwanted fields (OTP, search bars, credit card fields mid-checkout). Bitwarden's inline menu cited as intrusive.

**Frequency:** Common, especially on mobile-optimized sites viewed on desktop.

**Does Vault1984 solve it?**
Partially. LLM field mapping is invoked on-demand rather than injecting icons into every text field. Extension can activate on explicit keyboard shortcut or toolbar click only. Design choice, not a technical constraint.

---

#### 6. Master password / re-authentication nagging
**Severity:** 🟡 Medium-High

**What:** Extensions lock after short timeouts (especially LastPass, Dashlane) and demand re-entry of master password. Biometric unlock flaky or absent. Dashlane on Android 15 broke autofill entirely until May 2025.

**Frequency:** High for LastPass (aggressive timeout defaults), medium for others.

**Does Vault1984 solve it?**
Yes. Vault1984 uses WebAuthn for unlock (biometric first-class). Session management is local, no server-side token expiry.

---

#### 7. Doesn't detect/save new passwords correctly
**Severity:** 🟡 Medium

**What:** After creating an account or changing a password, extension either doesn't offer to save, shows prompt at wrong time, or saves wrong value. Broken "update password" detection is a top LastPass complaint.

**Frequency:** Common, especially after password change flows.

**Does Vault1984 solve it?**
Partially. LLM field mapping can detect password confirmation fields more reliably. However, explicit "save new password" detection flow needs to be built into the extension (not in current SPEC).

---

#### 8. Focus stealing / typing hijacked (Windows 1Password)
**Severity:** 🟡 Medium (Windows-specific)

**What:** While typing master password in extension popup, 1Password on Windows opens the full desktop app, stealing keyboard focus mid-password. Users re-type. Windows IPC behavior issue.

**Frequency:** Frequently cited in r/1Password Windows threads 2024.

**Does Vault1984 solve it?**
Yes — by design. No desktop app, no IPC, no focus stealing possible.

---

#### 9. Poor TOTP / 2FA integration
**Severity:** 🟡 Medium

**What:** Users want one-click TOTP autofill alongside username+password. 1Password does this but slowly. Bitwarden requires Premium. LastPass keeps breaking TOTP autofill after updates.

**Frequency:** Medium — requested frequently, implementation quality varies.

**Does Vault1984 solve it?**
Yes. TOTP is first-class in Vault1984 (L1 level, /api/ext/totp/:id). Extension fetches live TOTP code on demand. Autofill flow can include TOTP automatically.

---

#### 10. Privacy / trust concerns (cloud sync, data breaches)
**Severity:** 🟡 Medium-High (growing)

**What:** LastPass 2022 breach permanently damaged trust. Users migrating cite "I don't want my vault on their servers." 1Password's subscription SaaS model eroded trust with some power users. Bitwarden self-hosting is popular for this reason.

**Frequency:** Always-present background concern; growing with AI-powered cloud features.

**Does Vault1984 solve it?**
Yes — completely. Local-only, no cloud, no subscription, no external service. SPEC: "No cloud, no subscriptions." Strongest selling point vs. established players.

---

### Summary Table

| # | Complaint | 1PW | BW | LP | DL | V1984 Solves? |
|---|-----------|-----|----|----|-----|---------------|
| 1 | Slow/spinner/crash | XX | X | X | X | YES (local) |
| 2 | Autofill wrong/misses | X | X | X | X | YES (LLM mapping) |
| 3 | Breaks after browser update | X | X | X | X | Reduced risk |
| 4 | Requires desktop app | XX | OK | OK | OK | YES (none needed) |
| 5 | Icon intrudes on form | X | X | X | X | Design choice |
| 6 | Re-auth nagging | X | X | XX | X | YES (WebAuthn/local) |
| 7 | Save/update detection | X | X | XX | X | Needs work |
| 8 | Focus stealing (Win) | XX | OK | OK | OK | YES (N/A) |
| 9 | Poor TOTP integration | ~OK | ~OK$ | X | ~OK | YES (first-class) |
| 10 | Cloud trust/breach risk | X | OK(self) | XX | X | YES (local-only) |

---

## Task 2: Vault1984 in Claude Code / Codex / Cursor (no OpenClaw)

### Overview
Developers using Claude Code, Codex CLI, or Cursor in a plain terminal don't have OpenClaw running. Vault1984's MCP endpoint and CLI make it useful in all three scenarios.

---

### Option 1: MCP Server — Claude Code

Claude Code stores MCP configs in multiple locations. For a user-global tool like a password vault:

**Config file locations (Claude Code):**
- `.mcp.json` — in project root (version-controlled, team-shared)
- `~/.claude.json` — user-global under project path entry
- `~/.claude/settings.json` — user-global
- `.claude/settings.local.json` — project-local, not committed

**Option A: Already-running vault1984 server (HTTP transport)**
```bash
# Add via CLI
claude mcp add vault1984 --transport http http://localhost:8765/mcp
```

This writes to `~/.claude.json`. Works immediately if vault1984 is running.

**Option B: Stdio transport (vault1984 as MCP subprocess)**

Add to `.mcp.json` in project root:
```json
{
  "mcpServers": {
    "vault1984": {
      "command": "vault1984",
      "args": ["--mcp"],
      "env": {
        "VAULT_KEY": "${VAULT_KEY}",
        "DB_PATH": "${HOME}/.vault1984/vault.db"
      }
    }
  }
}
```

Enable project MCP servers in `.claude/settings.json`:
```json
{
  "enableAllProjectMcpServers": true
}
```

Or whitelist specific servers:
```json
{
  "enabledMcpjsonServers": ["vault1984"]
}
```

**Option C: User-global via `~/.claude.json`**
```json
{
  "projects": {
    "/path/to/your/project": {
      "mcpServers": {
        "vault1984": {
          "command": "vault1984",
          "args": ["--mcp"],
          "env": {
            "VAULT_KEY": "your-vault-key",
            "DB_PATH": "/Users/you/.vault1984/vault.db"
          }
        }
      }
    }
  }
}
```

**What this gives Claude Code:**
- `vault1984_get(title)` — fetch credential by name (L1 only)
- `vault1984_search(query)` — search entries
- `vault1984_totp(entry_id)` — get live TOTP code
- Claude can: "deploy to production using vault1984_get('AWS_PROD')" inline

---

### Option 2: CLI Usage — Direct Shell

Any AI coding tool that runs shell commands can use vault1984:

```bash
# Get a credential
vault1984 get "GitHub PAT"

# Get specific field
vault1984 get "GitHub PAT" --field password

# Search entries
vault1984 search "AWS"

# Get TOTP code
vault1984 totp "GitHub"
```

Claude Code's Bash tool and Codex CLI can shell out to these. Zero configuration needed.

---

### Option 3: Environment Variable Injection

```bash
# Inject all L1 credentials as env vars for subprocess
vault1984 run -- npm run deploy

# Inject specific entries
vault1984 run --entry "DATABASE_URL" --entry "REDIS_URL" -- python manage.py migrate

# Works with any tool
vault1984 run -- docker-compose up
vault1984 run -- terraform apply
```

Secrets never touch disk, never appear in `ps aux`, injected only for subprocess lifetime. Best pattern for CI/CD.

---

### Option 4: .env File Generation

```bash
# Generate .env from entries tagged "project:myapp"
vault1984 export --tag "project:myapp" --format dotenv > .env

# Specific entries
vault1984 export --entry "DATABASE_URL" --entry "API_KEY" --format dotenv > .env

# JSON for scripts
vault1984 export --format json --entry "GitHub PAT" | jq '.password'
```

Familiar to every developer. Zero MCP knowledge required.

---

### Option 5: Cursor Integration

Cursor uses same MCP config format as Claude Desktop:

```json
// ~/.cursor/mcp.json  (or Cursor settings → MCP)
{
  "mcpServers": {
    "vault1984": {
      "command": "vault1984",
      "args": ["--mcp"],
      "env": {
        "VAULT_KEY": "your-key-here",
        "DB_PATH": "/Users/you/.vault1984/vault.db"
      }
    }
  }
}
```

Or with running server (HTTP):
```json
{
  "mcpServers": {
    "vault1984": {
      "url": "http://localhost:8765/mcp"
    }
  }
}
```

---

### Option 6: Codex CLI (OpenAI)

Codex CLI supports MCP via `~/.codex/config.toml`:

```toml
[mcp_servers.vault1984]
command = "vault1984"
args = ["--mcp"]

[mcp_servers.vault1984.env]
VAULT_KEY = "your-key"
DB_PATH = "/Users/you/.vault1984/vault.db"
```

---

### Key Insight: "No OpenClaw" Pitch

For developers not using OpenClaw, vault1984's value propositions:
1. **MCP** — AI assistant reads credentials directly, no copy-paste, no shell injection risk
2. **`vault1984 run --`** — secrets injected as env vars for deploy scripts
3. **`.env` export** — familiar workflow, no new mental model
4. **TOTP in terminal** — no phone needed during deploy

---

## Task 3: Where/How to Announce Vault1984 in the OpenClaw Community

### Channel 1: ClawHub — `github.com/openclaw/clawhub`

**What it is:** Official OpenClaw skills registry. 5,700+ skills. Primary discovery mechanism — users run `clawhub install <name>`.

**Submission process:** Fork repo → add `vault1984/` folder with `SKILL.md` + assets → open pull request. Contribution guidelines in `CONTRIBUTING.md`.

**After merge:** `clawhub install vault1984` works globally.

**What they care about:** Working SKILL.md, clear description, functional install.

**Ideal skill description:**
> Local password vault with MCP integration for AI agents. Provides credential access, TOTP generation, and secret management without cloud sync. Two-tier encryption: L1 (AI-readable) + L2 (device-only). Includes Chrome extension with LLM-powered autofill.

**Priority: HIGH — do this first. Everything else references the skill.**

---

### Channel 2: GitHub Discussions — `github.com/openclaw/openclaw/discussions`

**What it is:** Main technical discussion forum. Active with developers building on OpenClaw.

**What they care about:** New integrations, security tools, MCP servers. Posts with working code examples get traction.

**Format:** Detailed technical post. Show config, show what it enables. Link to ClawHub entry.

**Ideal announcement post:**
> **Vault1984 — local password vault with MCP for OpenClaw**
>
> Single Go binary, SQLite, two-tier encryption (L1 AI-readable, L2 client-only). Your agent calls vault1984_get("GitHub PAT") directly via MCP. Chrome extension with LLM-powered autofill. No cloud, no subscription.
>
> clawhub install vault1984

---

### Channel 3: Discord — `discord.gg/clawd`

**What it is:** Primary community chat. "Community for Clawdbot builders — post your workflow, stack, config snippets, results."

**What they care about:** Practical demos. Copy-pasteable configs. "What does this let me do today?"

**Format:** Post in #skills or #showcase. Include: 2-sentence description + install command + example MCP config block + screenshot/GIF.

**Ideal announcement:**
> Just published vault1984 to ClawHub — a local password vault with MCP integration. Your agent can fetch credentials and TOTP codes directly, zero cloud dependency. Two-tier encryption: L1 for AI reads, L2 stays on device.
>
> clawhub install vault1984

---

### Channel 4: X — @openclaw community

**What it is:** @openclaw has an X Community ("OpenClaw Community," 1.6K members). Focuses on builders sharing workflows.

**@steipete status:** Joined OpenAI Feb 15, 2026. Likely less active on community projects now. OpenClaw continues as foundation. Tag @openclaw, not @steipete for community amplification.

**What they care about:** Technical demos, security tooling, "AI can now do X" framing.

**Format:** Short thread with GIF demo. Technical hook first.

**Ideal tweet:**
> vault1984: a local password vault built for AI agents.
>
> Your @OpenClaw agent calls vault1984_get("GitHub PAT") via MCP. No cloud. No subscription. Two-tier encryption — L1 for AI, L2 for your eyes only.
>
> clawhub install vault1984 🦞🔐

---

### Channel 5: awesome-openclaw-skills — `github.com/VoltAgent/awesome-openclaw-skills`

Most-browsed curated skill list (5,400+ indexed). Submit PR to add entry under Security/Credentials category. Short description + install command. High passive discoverability.

---

### Channel 6: awesome-openclaw — `github.com/SamurAIGPT/awesome-openclaw`

General awesome-list for OpenClaw resources. Submit PR under "Tools" or "Security" category.

---

### Timing Note

Peter Steinberger joined OpenAI Feb 15, 2026 — OpenClaw is now a foundation, "open, independent, and just getting started." Community is in a transition moment — good time to contribute substantive tools and get noticed by the foundation team running community/marketing.

---

### Priority Order for Announcement

1. **ClawHub PR** — gets it discoverable via `clawhub install`; required for all else
2. **GitHub Discussions** — technical audience, high quality signal
3. **Discord** — fastest community feedback loop
4. **X @openclaw** — broadest reach if amplified
5. **awesome-openclaw-skills PR** — passive long-tail discoverability
6. **awesome-openclaw PR** — supplementary

---

*End of RESEARCH.md*
