Skip to main content

Turn any company or organization URL into a strategic intelligence brief. Adaptive scraping + AI-powered research and synthesis.

Project description

Primr

CI OpenSSF Scorecard License: Apache 2.0 Python 3.12+

Primr turns a company website into a sourced strategic intelligence brief.

It reads public website pages, DNS records, hiring signals, and external sources, then produces a consultant-style report with confidence labels, citations, strategic hypotheses, and optional strategy modules. The useful part is not a generic article summary. It is the primary-signal layer: what the company exposes through infrastructure, job postings, product pages, filings, and public evidence.

primr "ExampleCo" https://example.co

Typical output is a 23-section Strategic Overview as Markdown, TXT, DOCX, and best-effort PDF when a local converter is available. The default run also creates an AI Strategy module unless you pass --no-ai-strategy.

What Primr Is For

Use Primr when you need a serious first draft for discovery, account planning, diligence, competitive analysis, or strategy work.

Primr is built for:

  • A structured strategic brief instead of scattered notes.
  • Research grounded in public evidence, not only web-search summaries.
  • Clear uncertainty: confirmed, reported, estimated, inferred, and hypothesis labels.
  • Cost-aware local execution with dry-run estimates before billable work.
  • Reusable artifacts for humans, agent hosts, and downstream workflows.

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

Use normal web search for a quick two-paragraph pre-call brief. Use Primr when you want the full evidence pipeline and durable artifacts.

Quick Start

Requirements:

  • Python 3.12 or newer.
  • API keys for the model providers you want to use. The measured low-cost default uses xAI plus Gemini.
  • Browser dependencies installed by primr init for browser-backed scraping tiers.

Install with the script:

powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/blisspixel/primr/main/scripts/install.ps1 | iex"
curl -fsSL https://raw.githubusercontent.com/blisspixel/primr/main/scripts/install.sh | bash

Or install with pipx:

pipx install primr
primr init
primr doctor

Plain pip also works:

pip install primr
primr init
primr doctor

On Windows, use the installer or pipx if primr is not found after pip install; a bare pip install can place scripts in a user Scripts directory that is not on PATH.

First Run

Always estimate before a billable run:

primr "ExampleCo" https://example.co --dry-run
primr "ExampleCo" https://example.co

Current dry-run shape for the common setup:

Run What it does Typical time Typical cost
Default with xAI plus Gemini Strategic Overview plus AI Strategy 34-59 min ~$0.89-$1.01
Base report only Strategic Overview, no AI Strategy 31-47 min ~$0.76-$0.79
primr skills Agent Skills pack from company evidence ~3 min ~$0.30
--mode scrape Site corpus and extracted insights only 5-10 min ~$0.10
--premium Gemini plus Deep Research for maximum depth 50-75 min ~$5
primr recon DNS intelligence only 2-3 sec $0.00

Costs change with provider configuration, strategy count, cache hits, model pricing, and run mode. Treat --dry-run as the source of truth for the next run.

See Run Modes and Costs for the full mode matrix, platform selection, strategy types, premium modes, and output examples.

Choose a Command

Need Command
Estimate the next run primr "Company" https://company.com --dry-run
Standard Strategic Overview plus AI Strategy primr "Company" https://company.com
Strategic Overview only primr "Company" https://company.com --no-ai-strategy
Strategy aimed at Microsoft Azure plus private cloud primr "Company" https://company.com --platform ms
Site corpus and extracted insights only primr "Company" https://company.com --mode scrape
DNS intelligence only, no model keys required primr recon company.com
Agent Skills pack for downstream hosts primr skills "Company" https://company.com
Client-facing deliverables in a chosen folder primr "Company" https://company.com --output-dir "C:\Clients\Company"

For agent-host operation, the same lifecycle applies: estimate, show the cost and mode, get explicit approval, launch, monitor asynchronously, then read the output artifact before summarizing it. See Agent Integration.

Cost and Safety Contract

Primr treats spend and egress as explicit control surfaces:

  • --dry-run is the source of truth for the next run estimate.
  • --budget N refuses to start when the estimate exceeds the cap.
  • Fast full-report runs checkpoint optional spend during the run.
  • Premium, deep, complete, and hybrid Deep Research paths checkpoint before optional strategy documents after the required Deep Research task completes.
  • Required Deep Research tasks cannot be stopped mid-flight once started, and scrape mode remains estimate-gated only.
  • Outbound URLs and redirects are guarded against internal-network and cloud-metadata targets.

What It Collects

Primr combines several evidence streams:

  • DNS reconnaissance for cloud, identity, email security, CDN, and SaaS signals.
  • Browser-first adaptive scraping across protected and ordinary websites.
  • Hiring-signal discovery across major ATS providers plus careers-page fallback.
  • External research and source cross-validation.
  • Optional strategy modules for AI, customer experience, security, data, migration, and skills.

The pipeline is defensive: every outbound URL is validated, redirects are guarded, and protected or low-signal sites are surfaced as constraints instead of silently padded.

Outputs

Default runs write artifacts under output/ and diagnostics under working/.

Common deliverables:

  • <Company>_Strategic_Overview_<date>.md
  • <Company>_Strategic_Overview_<date>.docx
  • <Company>_AI_Strategy_<date>.md when strategy generation is enabled
  • run_manifest.json with estimate, approval, execution, and audit metadata
  • scraped_content.txt, insights.json, and other intermediates for debugging

With --output-dir, Primr writes customer-facing Markdown and DOCX deliverables to that folder while keeping TXT mirrors and validation diagnostics in the run diagnostics directory.

See Artifact Pipeline, Recovery Guide, and Improve Guide.

Configuration

Start with:

primr init
primr keys set xai
primr keys set gemini
primr keys list
primr doctor --fix

Important keys:

Key Purpose
XAI_API_KEY Grok reasoning, strategy, and xAI-only fallback
GEMINI_API_KEY Low-cost writing, utility, premium mode, and Gemini-backed stages
OPENAI_API_KEY Optional OpenAI fallback provider
ANTHROPIC_API_KEY Optional Anthropic fallback provider
OLLAMA_BASE_URL Optional local OpenAI-compatible endpoint for local eval and utility paths

See API Key Setup and Configuration Reference.

Agent and Tool Integration

Primr can be operated from MCP-compatible agent hosts, local CLI workflows, OpenClaw, and Microsoft agent surfaces. The same rule applies everywhere: estimate first, get explicit approval, launch, then monitor asynchronously.

Start with Agent Integration. Programmatic MCP and A2A details live in MCP and A2A API. Skill-pack generation is covered in Skill Pack Guide.

Development

For source checkouts, see Contributing. The development contract is CLAUDE.md; it defines the code-quality bar, architecture seams, and verification gates for changing Primr itself.

The repository has 10,000+ tests, branch coverage above the 80% CI floor, Ruff formatting, mypy checks, Bandit, pip-audit, and strict documentation builds.

Documentation

Topic Guide
Run modes and costs Run Modes and Costs
API keys API Key Setup
Configuration Configuration Reference
Skill packs Skill Pack Guide
Agent integration Agent Integration
MCP and A2A API API Reference
Architecture System Design
Security Security Policy
Batch runs Batch Guide
Evaluation Evaluation Guide
Cloud deployment Cloud Deployment
Next steps Next Steps
Roadmap Roadmap

The docs site starts at docs/README.md.

Disclaimer

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

License

Apache 2.0. See LICENSE.

Project details


Release history Release notifications | RSS feed

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.34.8.tar.gz (2.1 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.34.8-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for primr-1.34.8.tar.gz
Algorithm Hash digest
SHA256 3e244c4babeb647296534fc4d5f5f779e6b9b99911586f2e48c08db3b60d3817
MD5 01eb198c58377243d9c6933bdedb8f69
BLAKE2b-256 e6cbde1d2195c492ea602afd455dff9870f143270ee7e50c7c73ecdc4dbdcfd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for primr-1.34.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.34.8-py3-none-any.whl.

File metadata

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

File hashes

Hashes for primr-1.34.8-py3-none-any.whl
Algorithm Hash digest
SHA256 22f6903419e8e98949daff1bd4192a00fefc54ef838fb854e84ef5f964ba0824
MD5 98af18c2c952bb8f3e4942a00b6518e7
BLAKE2b-256 a3534cf831485a5c3e2ad82561a4f8e8dcdd45bbb3d0eb38464e8b24a0a8601a

See more details on using hashes here.

Provenance

The following attestation bundles were made for primr-1.34.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.

Supported by

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