Skip to main content

brand-loom

Open-source marketing skills that run on any model — with a hosted brand-memory engine. No coding agent required.

License PyPI CI

brand-loom is a small library of commodity marketing skills — hooks, captions, hashtags, content repurposing, SEO outlines, FAQs, schema.org markup, CTAs — that run on any LLM (OpenAI, Anthropic, Gemini, or a local model via Ollama). Bring your own key. No coding agent, no vendor lock-in.

Want it on-brand and multi-platform automatically — without writing prompts? That's the hosted engine at neoxra.com (auto voice extraction, multi-platform orchestration, Brand Kit). brand-loom is the open core; Neoxra hosts the rest.

Why brand-loom

  • Model-agnostic. One interface, four providers, BYOK. Swap models with one env var.
  • No coding agent required. Plain Python — not coupled to Claude Code / Cursor / OpenClaw.
  • Brand-aware seam. Every skill accepts an optional brand_context. Ship a basic default here; get automatic, extracted brand voice on hosted Neoxra.

Quickstart (60 seconds, no API key)

pip install brand-loom
from brand_loom.providers import use_provider
from brand_loom.skills.hook import HookSkill

use_provider("fake")              # runs with zero keys; swap for "openai"/"anthropic"/"gemini"/"ollama"
skill = HookSkill()
print(skill.run_topic("How we cut cloud costs 40%"))

Real provider (BYOK):

pip install "brand-loom[openai]"
export OPENAI_API_KEY=sk-...
export BRANDLOOM_PROVIDER=openai

Run it as an agent (no coding agent required):

brand-loom run hook --text "How we cut cloud costs 40%"
brand-loom chain hook,caption --text "How we cut cloud costs 40%" --brand brand.json

A thin, linear runner — one skill or a simple chain, on any model. Sophisticated multi-platform orchestration (voice-matched, Planner→Critic, auto fan-out) lives in hosted Neoxra.

Agent chain (Python API):

from brand_loom.agent import run_chain, run_skill
from brand_loom.providers import use_provider

use_provider("fake")  # or "openai", "anthropic", "gemini", "ollama"

# Single skill
result = run_skill("hook", "How we cut cloud costs 40%")
print(result.text)

# Chain: hook → caption
result = run_chain(["hook", "caption"], "How we cut cloud costs 40%")
print(result.text)

# With brand context
result = run_skill("hook", "AI marketing", brand_context={
    "tone": ["bold", "witty"],
    "audience": "startup founders",
})
print(result.text)

Install in your coding agent

brand-loom also works as an agent skill in Claude Code, Cursor, OpenClaw, and any skills.sh-compatible host:

npx skills add hogan-tech/brand-loom

Each skill is available as a SKILL.md in the skills/ directory with frontmatter that agent hosts parse automatically. No configuration needed — install and use.

brand-loom remains model-agnostic and usable without any coding agent via pip install brand-loom + the CLI. The agent-skill surface is additive distribution, not a requirement.

Skills (v0.1)

Skill What it does
hook Headline / hook options for a topic
caption Platform caption from a topic + brand_context
hashtags Relevant, deduped hashtag set
repurpose long→short, article→thread, article→carousel copy
seo_outline 4–8 section SEO article outline (locale-parametric)
faq 3–6 Q&A pairs from a body of text
schema_org FAQPage / Article / Breadcrumb JSON-LD (no LLM)
cta Call-to-action variants for a goal

Providers

Provider Extra Env
OpenAI brand-loom[openai] OPENAI_API_KEY
Anthropic brand-loom[anthropic] ANTHROPIC_API_KEY
Gemini brand-loom[gemini] GEMINI_API_KEY
Ollama (local) built-in (HTTP) OLLAMA_HOST
Fake (tests/demo) built-in —

The brand_context seam

Skills accept an optional brand_context dict (tone, audience, do_phrases, avoid_phrases). brand-loom ships an empty/basic default. Automatic voice extraction from your existing content, multi-platform fan-out, and a no-code UI live in hosted Neoxra — see HOSTED.md.

Contributing

PRs welcome — read CONTRIBUTING.md, SCOPE.md, and sign the CLA. In scope: single-shot commodity skills. Out of scope: voice engine, orchestration, tuned scorers, analytics/publish integrations (these live in the hosted product).

License

Apache-2.0. Hosted by Neoxra · a Meridian Global product.

Metadata

Release files for brand-loom 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for brand-loom 0.1.1
File Size Uploaded Provenance
brand_loom-0.1.1.tar.gz 39.2 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for brand-loom 0.1.1
File Interpreter ABI Platform
brand_loom-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 70.0 kB

Release files / brand_loom-0.1.1.tar.gz

Download URL brand_loom-0.1.1.tar.gz
Size 39.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b48fd9f7c6842896145ff3e06ce389ace55110af5fb5d5535fc669d4cd3f13e9
BLAKE2b-256 checksum
How to use checksums
03bef858b3ed64e379d786b20ac4db6e132b5059079c0bf2a0d4ca01a05bfa83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 15, 2026.

Transparency log

Release files / brand_loom-0.1.1-py3-none-any.whl

Download URL brand_loom-0.1.1-py3-none-any.whl
Size 30.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
522b0087025ac0a38cd85c5f4a35a7378c6d576aae2bef192855539328f0b0ff
BLAKE2b-256 checksum
How to use checksums
9728da95a8ecea2b72194e193b1d6476887a3b97370d3147d0eca20da71f48f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 15, 2026.

Transparency log

Security for brand-loom 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for brand_loom-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 15, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page