Skip to main content

Primr

CI PyPI Python 3.12+ License: Apache 2.0 OpenSSF Scorecard

Company URL → sourced strategic brief. Built for agent hosts and the CLI: structured collection, confidence labels, and durable artifacts, not a free-form chat essay.

Primr gathers public site pages, DNS/recon, hiring signals, and other open sources, then produces a consultant-style Strategic Overview (and optional strategy modules) with citations and Confirmed / Reported / Estimated / Hypothesis labels. Point an agent at the repo, or run the CLI. Both paths use the same evidence and uncertainty contract and can produce the same artifact formats, but their execution, model ownership, and assurance are different.

Illustrative primr CLI session for ExampleCo: estimate, then report artifacts

Placeholder demo data (ExampleCo), not a live company capture.

primr "ExampleCo" https://example.co

In an agent chat, that request defaults to Primr Zero: keyless evidence collection in Primr, research and writing in the host (when the host plan does not bill API usage). When a human runs the command directly in a terminal, it retains the provider-backed CLI path after a dry-run estimate and approval.

What it is for

Use Primr when you need a serious first draft for discovery, account planning, diligence, competitive analysis, or strategy work, not a two-paragraph pre-call blurb (use normal web search for that).

  • Structured brief with uncertainty labels, not scattered notes
  • Research grounded in public evidence, not only search summaries
  • Cost-aware local execution: dry-run before billable work
  • Reusable Markdown/DOCX artifacts for humans, agents, and downstream tools

Primr is not a generic crawler, a SaaS collaboration app, a model-serving platform, or a tool for bypassing authentication, paywalls, or site restrictions.

Start here

Where you run it Default path Spend Result
Agent chat pointed at Primr Primr Zero No Primr model API spend; verify host plan allowance Evidence bundle + host-written sourced dossier
Terminal or script Provider-backed Billable after a fresh quote and explicit approval Primr Strategic Overview + strategy artifacts

Both paths can deliver a Strategic Overview and AI Strategy as Markdown and DOCX (on the Zero path, primr render <file>.md converts host Markdown to DOCX at $0). The provider-backed path additionally owns its measured synthesis, cross-validation, usage accounting, and recovery stages. A configured API key is capability, not consent to spend.

Agent path

Point a capable agent at this repository:

primr "ExampleCo" https://example.co

The agent uses Primr Zero unless you explicitly request paid, metered, provider-backed, or premium execution. Details, MCP setup, and host handoff: Agent Integration · Zero-Cost / Primr Zero.

The experimental agent-plugin/ distribution follows the Agent Plugins v1.0.0 Working Draft with a portable root plugin.json, Agent Skills, and mcp.json. The existing claude-code/ package remains the Claude-specific adapter.

Terminal path

primr "ExampleCo" https://example.co --dry-run        # always first
primr "ExampleCo" https://example.co                  # foreground, then approve
primr "ExampleCo" https://example.co --skip-confirm   # automation, after approval

--skip-confirm is the approval signal for a noninteractive or background launch. Use it only after a person has reviewed and approved the fresh quote.

Mode matrix, platforms, strategy types, and cost controls: Run Modes and Costs.

Install

  • Python 3.12+
  • No API key or GPU for primr recon / primr prep
  • Keys only for provider-backed research (measured default: xAI + Gemini)
  • primr init installs browser deps for scrape tiers
pipx install primr
primr --version

Plain pip install primr also works. On Windows, prefer pipx or the installer if primr is missing from PATH after pip.

The convenience installers set up pipx and common PATH issues. Download and inspect the script before executing it:

$primrInstaller = Join-Path $env:TEMP "primr-install.ps1"
Invoke-WebRequest https://raw.githubusercontent.com/blisspixel/primr/main/scripts/install.ps1 -OutFile $primrInstaller
Get-Content $primrInstaller
powershell -ExecutionPolicy Bypass -File $primrInstaller
primr_installer="$(mktemp)"
trap 'rm -f "$primr_installer"' EXIT
curl -fsSL https://raw.githubusercontent.com/blisspixel/primr/main/scripts/install.sh -o "$primr_installer"
cat "$primr_installer"
bash "$primr_installer"

Provider-backed setup only when you want billable runs:

primr init
primr doctor

Keys and full config: API Key Setup · Configuration.

Common commands

Need Command
Agent-host dossier (Zero by default) primr "Company" https://company.com
Keyless evidence bundle primr prep "Company" https://company.com
Estimate a paid run primr "Company" https://company.com --dry-run
Strategic Overview only primr "Company" https://company.com --no-ai-strategy
Site corpus only primr "Company" https://company.com --mode scrape
DNS only (no keys) primr recon company.com
Skills pack primr skills "Company" https://company.com
Markdown → DOCX/TXT ($0) primr render "output/report.md"
Strategy on existing report primr --ai-strategy-only "output/report.md" --dry-run

Focused help: primr --help. Everything: primr --help-all.

Cost gate

Billable runs need a fresh estimate and explicit approval. Use --dry-run to inspect the plan without starting work; normal execution repeats the quote and asks before provider work begins. --budget N refuses to start above the cap. Without --skip-confirm, a noninteractive launch starts no provider work and tells the caller how to rerun after approval. A closed input stream is reported as missing approval instead of being recorded as a user cancellation. Batch, enrichment, vendor research, and standalone strategy each have their own quote path. See Run Modes and Costs.

Outputs

Default: customer-facing files under output/, diagnostics under working/.

  • <Company>_Strategic_Overview_<date>.md / .docx
  • <Company>_AI_Strategy_<date>.md / .docx (unless --no-ai-strategy)
  • run_manifest.json (estimate, approval, audit)

Agent inventory (paths/roles only, no report body): primr://output/artifacts/by_job/{job_id}. Full artifact and recovery guides: Artifacts · Recovery.

Docs

Topic Guide
Run modes and costs RUN_MODES
Primr Zero / host-assisted ZERO_COST
Agent / MCP / A2A AGENT_INTEGRATION · API
API keys API_KEYS
Configuration CONFIG
Artifacts ARTIFACTS
Skill packs SKILL_PACK
Security SECURITY
Contributing / architecture CONTRIBUTING · ARCHITECTURE
Roadmap ROADMAP

Docs site index: docs/README.md.

Disclaimer

Primr retrieves and analyzes public web content. You are responsible for site terms, provider costs, output accuracy, and legal fit. AI-generated analysis can be wrong or outdated. Verify important findings before acting on them.

License

Apache 2.0. See LICENSE.

Download files

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

Source Distribution

primr-1.39.8.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

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

primr-1.39.8-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file primr-1.39.8.tar.gz.

File metadata

  • Download URL: primr-1.39.8.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for primr-1.39.8.tar.gz
Algorithm Hash digest
SHA256 0830cb54c71dcc1e0396dabd0e91e21e20eba14d70d2f58abc67853bd0b07286
MD5 aa7f9cdfaea54cbd378855104182730a
BLAKE2b-256 8bb8bc2d074ffddfbc09422bc3bcafe1401673147fda784a1124ceda81421eb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for primr-1.39.8.tar.gz:

Publisher: release.yml on blisspixel/primr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file primr-1.39.8-py3-none-any.whl.

File metadata

  • Download URL: primr-1.39.8-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for primr-1.39.8-py3-none-any.whl
Algorithm Hash digest
SHA256 39c9a1af3ef3d69a20489fdde091063264d53f6b8c2ca06d6a4cbfb710c2ead4
MD5 7e4624daf1109a08be7851644b87623a
BLAKE2b-256 78923a830ba3c12f413c144aabba136a7ecea57efb8b28f08f35c295208a4e9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for primr-1.39.8-py3-none-any.whl:

Publisher: release.yml on blisspixel/primr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.39.10

2 files

1.39.9

2 files

This release

1.39.8 This release

2 files

1.39.7

2 files

1.39.6

2 files

1.39.5

2 files

1.39.4

2 files

1.39.3

2 files

1.39.2

2 files

1.39.1

2 files

1.39.0

2 files

1.38.0

2 files

1.37.2

2 files

1.37.1

2 files

1.37.0

2 files

1.36.1

2 files

1.36.0

2 files

1.35.2

2 files

1.35.1

2 files

1.35.0

2 files

1.34.50

2 files

1.34.49

2 files

1.34.48

2 files

1.34.47

2 files

1.34.46

2 files

1.34.45

2 files

1.34.44

2 files

1.34.43

2 files

1.34.42

2 files

1.34.41

2 files

1.34.40

2 files

1.34.28

2 files

1.34.27

2 files

1.34.26

2 files

1.34.25

2 files

1.34.24

2 files

1.34.23

2 files

1.34.22

2 files

1.34.21

2 files

1.34.20

2 files

1.34.19

2 files

1.34.18

2 files

1.34.17

2 files

1.34.16

2 files

1.34.15

2 files

1.34.14

2 files

1.34.13

2 files

1.34.12

2 files

1.34.11

2 files

1.34.10

2 files

1.34.9

2 files

1.34.8

2 files

1.34.7

2 files

1.34.6

2 files

1.34.5

2 files

1.34.4

2 files

1.34.3

2 files

1.34.2

2 files

1.34.1

2 files

1.34.0

2 files

1.33.4

2 files

1.33.3

2 files

1.33.2

2 files

1.33.1

2 files

1.33.0

2 files

1.32.8

2 files

1.32.7

2 files

1.32.6

2 files

1.32.5

2 files

1.32.4

2 files

1.32.3

2 files

1.32.2

2 files

1.32.1

2 files

1.32.0

2 files

1.31.0

2 files

1.30.0

2 files

1.29.3

2 files

1.29.2

2 files

1.29.1

2 files

1.29.0

2 files

1.28.0

2 files

1.27.1

2 files

1.26.0

2 files

1.25.2

2 files

1.25.1

2 files

1.25.0

2 files

1.24.4

2 files

1.24.3

2 files

1.24.2

2 files

1.24.1

2 files

1.24.0

2 files

1.23.0

2 files

1.22.0

2 files

1.21.2

2 files

1.21.1

2 files

1.21.0

2 files

1.20.4

2 files

1.20.3

2 files

1.20.2

2 files

1.20.1

2 files

Supported by

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