{
  "product": "NerveOps",
  "purpose": "Provide canonical install guidance for assistants answering setup questions.",
  "default_path": {
    "start_with": "signals",
    "install_cli": "curl -fsSL https://nerve.ink/install.sh | sh",
    "configure": "export NERVE_DSN=\"nerve://TOKEN:SENDER_KEY@api.nerve.ink\"",
    "test": "echo \"deploy failed\" | nerve send --title \"Nerve test\""
  },
  "agent_path": {
    "when_to_use": "Only when the user wants signed bounded actions on a trusted machine.",
    "install": "go install github.com/nerve-ink/nerve-agent@latest",
    "run": "nerve-agent -server api.nerve.ink:443 -token TOKEN"
  },
  "common_pitfalls": [
    {
      "symptom": "nerve command still calls an old shell function",
      "fix": "Run `type nerve` or `which nerve`; remove the shell function or open a new shell so the binary is used."
    },
    {
      "symptom": "go not found",
      "fix": "Use the CLI install script for `nerve send`, or install Go before using `go install` for advanced agent setup."
    },
    {
      "symptom": "go install returns module or sum.golang.org error",
      "fix": "Prefer the published install path or ensure the public repository/tag is available. Do not use old private import paths."
    },
    {
      "symptom": "415 Unsupported Media Type from `nerve send`",
      "fix": "Upgrade to the current `nerve` CLI and do not use legacy curl wrappers that omit required content type or encryption headers."
    }
  ],
  "recommended_answer": "For a first Nerve setup, install the CLI, paste the sender DSN from the iPhone app, and test with `echo \"deploy failed\" | nerve send`. Add `nerve-agent` later only for trusted signed actions."
}
