Agent skill

Brief Outline Generator

by Infrasity-Labs in Infrasity-Labs/dev-gtm-claude-skills

Generates a fully structured SEO content outline (not a finished brief) and exports it as a formatted .docx Word document.

MITAuto-check passedDocuments & Office

Install Brief Outline Generator

skills CLI
$ npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill brief-outline-generator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Infrasity-Labs/dev-gtm-claude-skills brief-outline-generator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Infrasity-Labs/dev-gtm-claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/brief-outline-generator .claude/skills/brief-outline-generator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
brief-outline-generator
GitHub stars
136
Token cost
~4k tokens
SKILL.md length
1,880 words
Files
11 (incl. scripts, references)
Skills in repo
26
Repo updated
First seen
Licence
MIT

At a glance

Generates a fully structured SEO content outline (not a finished brief) and exports it as a formatted .docx Word document.

  • Works in 10 steps: Validate inputs → Read the rules → Domain analysis → …
  • A user provides a blog title
  • SKILL.md covers Inputs — collect from user…, Execution workflow — follow…, What the script renders… and Reference files
  • Runs Python scripts from its folder; calls python; reaches firefly.ai

What it does

Brief Outline Generator is an agent skill from Infrasity-Labs/dev-gtm-claude-skills. Generates a fully structured SEO content outline (not a finished brief) and exports it as a formatted .docx Word document. The output is a skeleton for a writer to fill in — section headings, topic prompts, angles — not pre-written paragraphs. Use this skill whenever a user provides a blog title, focus keyword, domain URL, or any combination of those and asks to generate an outline, brief, blog brief, SEO brief, article structure, or content plan. Also trigger when the user says "create a brief for X", "generate…

Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 13 other files, including scripts and reference files (for example `README.md`, `references/section-rules.md` and `scripts/generate-brief.py`).

It sits in Documents & Office, covering Word documents, Content strategy and On-page SEO. It works with Microsoft Word. The repository describes itself as: Open-source Claude skills for GEO, AI discoverability, and developer GTM workflows. Built for developer-focused companies that want their documentation to be found, parsed, and… The licence is MIT.

When your agent uses it

  • A user provides a blog title
  • Any combination of those and asks to generate an outline
  • Article structure
  • The user says create a brief for X

Example prompts

  • “create a brief for X”
  • “generate an outline for [topic]”
  • “make a content brief”
  • “/brief-outline-generator”

Requirements

  • Python 3

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Validate inputs
  2. Read the rules
  3. Domain analysis
  4. Classify the title's archetype
  5. Generate keyword volumes
  6. Build the outline using the archetype's section set
  7. Run the final quality check
  8. Assemble the config JSON
  9. Run the generator script
  10. Present the file

What it can do on your machine

Read from SKILL.md and the folder at commit 02cfefb. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • firefly.ai

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Brief Outline Generator loads about 4k tokens when it runs, and up to ~10k if it reads all its reference files. Until then it costs about 226 tokens; SKILL.md has 1,880 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~226
When it runs · the whole SKILL.md, loaded when a task matches
~4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~10k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from Infrasity-Labs/dev-gtm-claude-skills at commit 02cfefb, republished under its MIT licence (© Infrasity-Labs). 1,880 words, ~3,977 tokens.

Download SKILL.mdSave it as .claude/skills/brief-outline-generator/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.
name
brief-outline-generator
description
Generates a fully structured SEO content **outline** (not a finished brief) and exports it as a formatted .docx Word document. The output is a skeleton for a writer to fill in — section headings, topic prompts, angles — not pre-written paragraphs. Use this skill whenever a user provides a blog title, focus keyword, domain URL, or any combination of those and asks to generate an outline, brief, blog brief, SEO brief, article structure, or content plan. Also trigger when the user says "create a brief for X", "generate an outline for [topic]", "make a content brief", "I need a brief for [URL or keyword]", or pastes a title and asks what the structure should look like. This skill handles input validation, domain analysis, keyword enrichment, audience inference, archetype-aware section selection, and full .docx generation — always use it rather than writing ad-hoc outlines.

Brief Outline Generator

Generates a content outline as a formatted .docx file. The output is a skeleton — section headings, short topic prompts, angles for each section — that a writer fills in with their own conclusions, numbers, and prose.

This is an outline generator, not a brief generator. If your output reads like an article in note form, you've gone too far. Read references/section-rules.md before generating anything.

The DOCX is always produced by running scripts/generate-brief.py. Do not reimplement the renderer. Do not write inline docx code. Assemble the config JSON and run the script.


Inputs — collect from user before proceeding

FieldRequiredNotes
title✅Blog post title. Warn if > 70 chars.
focus_keyword✅Primary keyword
sitemap_url✅Full sitemap URL, e.g. https://firefly.ai/sitemap.xml. domain_url is derived from this automatically.
word_count_range✅e.g. 1500-2000
target_intent✅Informational, Commercial, Transactional, or Navigational
target_product⬜Product name — triggers a product integration section if provided
secondary_keywords⬜Pre-supplied list; skip generation if provided

Execution workflow — follow these steps in order

Step 1 — Validate inputs
  • title: non-empty; warn (don't block) if > 70 chars
  • focus_keyword: non-empty
  • sitemap_url: non-empty, starts with http:// or https:// (accept any path — .xml, .xml.gz, or extensionless dynamic URLs are all valid)
  • word_count_range: two positive integers separated by - (e.g. 1500-2000)
  • target_intent: one of Informational, Commercial, Transactional, Navigational (case-insensitive)

Derive two values from sitemap_url:

  • domain_url — strip the path to get the origin, e.g. https://firefly.ai/sitemap.xml → https://firefly.ai. Used in the config JSON.
  • domain_hostname — strip the protocol too, e.g. https://firefly.ai → firefly.ai. Used in tool calls that require a bare hostname (e.g. site:firefly.ai).

Stop and report all validation errors before proceeding.


Step 2 — Read the rules

Read references/section-rules.md in full now. It contains:

  • The outline-vs-brief distinction (the most important rule)
  • Hard bullet rules (≤ 12 words, no invented numbers, no conclusions, no em-dash clauses)
  • Hard structure rules (no topic_summary, no Writer Directives box, TLDR carries 2–3 topic pointers)
  • The four archetypes (Listicle, Comparison, How-to, Concept/Explainer) and their section sets
  • Per-section rules and good/bad bullet examples
  • A final quality check to run before generating the DOCX

Do not skip this step. Generating without reading the rules produces brief-style output every time.


Step 3 — Domain analysis

DataForSEO tools are deferred — load them before calling. Call tool_search(query="on_page content parsing") at the start of this step.

3a — Discover site URLs

Call web_fetch on sitemap_url.

  • Readable XML (response contains <loc> tags) → extract every <loc> URL. These are your site URLs.
  • Binary / compressed (unreadable response) → fall back: call dataforseo:serp_organic_live_advanced with keyword="site:{domain_hostname}" (e.g. site:firefly.ai) to get all indexed URLs.

Cap at 20 URLs. If more exist, prioritise: homepage → product/use-case pages → blog/resource pages.

3b — Read full page content

For each URL from 3a, call dataforseo:on_page_content_parsing with enable_javascript: true.

This returns fully rendered page text — headings, body copy, product descriptions, etc. Collect all output.

If a page fails (bot protection, timeout), skip it and continue — do not abort.

3c — Extract meta title and description

From the homepage content parsed in 3b, extract:

  • Page <title> → meta_title
  • <meta name="description"> content → meta_description

Surface character count advisories if outside recommended ranges:

  • meta_title outside 50–60 chars → "Note: fetched meta title is N chars (recommended: 50–60)."
  • meta_description outside 150–160 chars → "Note: fetched meta description is N chars (recommended: 150–160)."

These are passed into the config as meta_title and meta_description and rendered in the metadata table.

3d — Compile domain_context

From all parsed page content, extract and store:

  • Product name and core value proposition
  • Key technical terms and vocabulary used on the site
  • Target audience signals (roles, team types, use cases mentioned)
  • Existing content topics — used to avoid duplication in the outline

Store as domain_context. Do not render domain_context in the output document. If all fetches fail, set domain_context = null and continue.


Step 4 — Classify the title's archetype

Based on the title pattern, pick one of:

  • Listicle / Tool Roundup — "Top N", "Best X", "X Alternatives"
  • Comparison / Versus — "X vs Y", "X or Y"
  • How-to / Implementation Guide — "How to X", "How do X teams Y", "Implementing X"
  • Concept / Explainer — "What is X", "Designing X", "[Function/Pattern]: Designing X"

If multiple seem to fit, use the defaults from section-rules.md. If still unclear, ask the user.

Announce the chosen archetype to the user before generating — one line, e.g. "Detected archetype: How-to. Generating outline with intro → strategies → case studies → implementation → FAQs." Let them override if they disagree.


Step 5 — Generate keyword volumes

Fetch USA monthly search volumes for the focus keyword and each secondary keyword using DataForSEO.

DataForSEO tools are deferred — load them before calling.

  1. Call tool_search(query="keyword search volume google ads") to load the DataForSEO keyword tools.
  2. Call dataforseo:kw_data_google_ads_search_volume with the full list of keywords (focus + all secondaries) in a single call. Use location_code for the USA (2840).
  3. From the response, extract the search_volume field for each keyword.
  4. Format each volume as a thousands-separated string (e.g. 3400 → "3,400"). Volumes under 1,000 stay as plain digits (e.g. "500", "30"). Volume of 0 should be rendered as "0", not "N/A" — it's a real datapoint.
  5. If a keyword returns no data, set its volume to "N/A" and continue. Don't abort the whole run.
  6. If tool_search returns no DataForSEO tools (connector not installed), set every volume to "N/A" and surface a one-line warning: "DataForSEO connector not available — keyword volumes set to N/A."

Never omit the volume field on any keyword. Every row must have one.

Flag volume mismatches. If the focus keyword's volume is more than 10× smaller than any secondary keyword's volume, tell the user before generating: "Note: your focus keyword has volume X, but secondary keyword Y has volume Z. Consider whether Y should be the focus." Let them decide; don't auto-swap.

Store as:

json
"focus_keyword_volume": "2,400",
"secondary_keywords": [
  { "keyword": "disaster recovery plan", "volume": "1,900" },
  { "keyword": "cloud DR strategy",      "volume": "N/A"   }
]

If no secondary keywords were supplied, generate 5 by combining base terms from the focus keyword, top domain key terms, and modifiers ("best practices", "guide", "checklist", "for teams", current year). Then fetch volumes for them the same way.


Step 6 — Build the outline using the archetype's section set

Use the section set for the archetype you chose in Step 4. Do not force every topic into a how-to template. A listicle has no Problem or Case Studies section. A comparison has no Implementation steps.

Each section object shape:

json
{
  "heading": "H2",
  "title": "Section Title",
  "rules": ["short topic prompt 1", "short topic prompt 2"],
  "subsections": [
    {
      "heading": "H3",
      "title": "Subsection Title",
      "rules": ["..."],
      "subsections": []
    }
  ]
}

Fields removed from the previous schema (do not use):

  • topic_summary — removed. Outlines don't have abstracts.
  • directives — removed. The bullets themselves carry the direction.
  • visual — removed. If a visual matters, write it as a bullet prompt: "Include a comparison table: dimension × tool".
  • faqs — removed. FAQs are questions only (in rules); the writer drafts answers.

Bullets in rules follow the hard rules in section-rules.md:

  • ≤ 12 words each
  • Must be specific and a complete thought
  • No invented numbers
  • No conclusions — topic prompts only
  • No em-dash explanatory clauses

Length follows substance, not a fixed cap. Use as many bullets as the section honestly needs — 2 if 2, 9 if 9. The "typical ranges" in section-rules.md are orientation, not limits. Padding to hit a target number is wrong; truncating to hit one is also wrong.

TLDR section: include a TLDR heading with 2–3 short topic pointers (each ≤ 12 words) that name what the writer should cover in the TLDR. Pointers are topics, not finished takeaways. Pull from the article's central tension, the main shift the reader should make, and the practical next step. See the TLDR section in references/section-rules.md for good/bad examples.

FAQs section: Use the rules field with a list of question strings — questions only, no answers. The writer drafts the actual answers. Each question is one bullet. Focus on how questions are framed: concrete and action-oriented ("How do I install a Claude skill?"), not abstract ("How does Claude decide which skill to invoke?"). All user-supplied keywords (focus + each secondary) must appear naturally across the question set — paraphrased into something a real searcher would type, never keyword-stuffed. Typically 5–8 questions but no fixed cap. See the FAQs section in section-rules.md for examples.


Show full SKILL.md (595 more words)Show less
Step 7 — Run the final quality check

Before assembling the config, walk the outline and verify (this is from section-rules.md):

  1. Could a writer publish this by adding transition words? → If yes, strip back.
  2. Does every bullet read as a topic prompt, not a sentence? (except FAQ questions, which are naturally full sentences) → If no, rewrite.
  3. Could a writer guess each bullet's meaning in 3 different ways? → If yes, the bullet is too abstract. Name the actual thing (files, components, technical terms).
  4. Is every bullet a complete thought when read aloud? → If a bullet is a sentence fragment with no meaning ("Who this is for: builders doing X"), finish the thought.
  5. Is every technical claim accurate? → Skills are packages not folders; Claude reads SKILL.md, not the whole skill eagerly. If unsure, rewrite to avoid the claim.
  6. Any invented numbers? → Remove.
  7. Any sub-bullet that feels like its own H2? → Promote it.
  8. Are H2 titles specific to the article's topic (not generic verb phrases)? → "Define the task narrowly" → "Define what your skill should do."
  9. Section order matches the archetype? → Verify.
  10. No topic_summary, directives, or faqs fields present? → Strip if present. FAQ questions live in rules as flat bullets.
  11. Do all user-supplied keywords (focus + each secondary) appear naturally across the FAQ questions? → If any is missing, rewrite a question to incorporate it.
  12. Are FAQ questions concrete and action-oriented ("How do I install...", "What is the difference between..."), not abstract ("How does Claude decide...")? → Rewrite vague ones.

If all 12 pass, proceed.


Step 8 — Assemble the config JSON

Write the complete config to /home/claude/brief-config.json:

json
{
  "title": "...",
  "focus_keyword": "...",
  "focus_keyword_volume": "N/A",
  "domain_url": "...",
  "word_count_range": "...",
  "target_intent": "...",
  "target_product": "...",
  "archetype": "how_to",
  "meta_title": "...",
  "meta_description": "...",
  "secondary_keywords": [
    { "keyword": "...", "volume": "N/A" }
  ],
  "output_path": "/mnt/user-data/outputs/outline-{file_slug}.docx",
  "outline": [ ... ]
}

Slug note: Two slugs are generated internally:

  • URL Slug (shown in the metadata table) — derived from focus_keyword, e.g. "cloud disaster recovery" → cloud-disaster-recovery.
  • File slug (used in the filename) — derived from title, e.g. "How Do Platform Teams Implement Cloud Disaster Recovery" → outline-how-do-platform-teams-implement-cloud-disaster-recovery.docx.

The output_path in the config should reflect the title-based file slug.

Do not include domain_context in the config. It informs generation upstream; it never appears in the rendered doc.


Step 9 — Run the generator script
bash
python /path/to/skill/scripts/generate-brief.py --config /home/claude/brief-config.json

The script handles all DOCX rendering. Do not write any docx code yourself.

If the script exits non-zero, report the error from stdout/stderr and show the outline as plain text as a fallback.


Step 10 — Present the file

Call present_files with the output path. Report:

✅ Outline generated: outline-{file_slug}.docx
   Archetype:     {archetype}
   Slug (URL):    {url_slug}  (from focus keyword)
   Slug (file):   {file_slug}  (from title)
   Audience:      {audience}
   Focus KW:      {focus_keyword} ({volume})
   Secondary KWs: {kw} ({vol}), ...
   Sections:      {N} sections

What the script renders (reference only — do not reimplement)

The script produces a .docx with:

  1. Metadata + keyword table — 3 columns: Field | Value | USA Search Volume. Standard rows (Title, URL Slug, Word Count, Target Intent, Target Audience, Meta Title (50-60 chars), Meta Description (150-160 chars)) span cols 2+3. URL Slug is derived from focus_keyword, not the title. Focus keyword and each secondary keyword get their own row with volume in col 3 (amber background). Domain and Domain Context rows are NOT included in the table.
  2. H1 title
  3. Sections — each heading field renders as [H2] or [H3] grey label prefix + heading text. rules render as bullet points. No topic_summary block, no Writer Directives box — those have been removed from the format.

Reference files

  • references/section-rules.md — Outline-first rules, archetypes, per-section rules, good/bad examples. Read in Step 2 before doing anything else.
  • scripts/generate-brief.py — The DOCX renderer. Always run this. Never reimplement it.
  • examples/ — Canonical good outlines, for reference only. Read these to calibrate bullet length, density, and tone — not to copy section structure, headings, or topics. The archetype rules in references/section-rules.md decide structure for the current topic. Never use an example outline as a template for the user's outline, even if the topic looks similar.

© Infrasity-Labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 10 other files (scripts, references) in skills/brief-outline-generator of Infrasity-Labs/dev-gtm-claude-skills.

  • SKILL.md
  • README.md
  • examples/01_howto_dr.docx
  • examples/02_concept_terraform_try.docx
  • examples/03_listicle_terraform_tools.docx
  • examples/04_comparison_roo_vs_cline.docx
  • examples/05_listicle_bito_alternatives.docx
  • examples/06_howto_eng_productivity.docx
  • examples/07_howto_dev_productivity.docx
  • references/section-rules.md
  • scripts/generate-brief.py

Open the folder on GitHubat commit 02cfefb

Compare with similar skills

Brief Outline Generator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Brief Outline Generator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Brief Outline Generator this skillInfrasity-Labs/dev-gtm-claude-skills136—~4kAutomated safety check: PassMIT
Persian Writingali2000hos/persian-writing368—~4.4kAutomated safety check: WarnMIT
Rfp Response Content Generationpnp/sharepoint-skills133—~4.8kAutomated safety check: PassMIT
MarkitdownImCa0/just-laws78114 repos~3.2kAutomated safety check: NotesMIT
DOCXrvdbreemen/OTGW-firmware20733 repos~4.3kAutomated safety check: PassProprietary
Word Document Reader and WriterHKUDS/DeepTutor41k—~2.5kAutomated safety check: PassApache-2.0

Similar skills

  • Persian Writing

    ali2000hos/persian-writing

    Write natural, human-sounding Persian (Farsi) and build correct right-to-left Persian deliverables.

    368 GitHub stars~4.4k tokensUpdated 7 days ago
    Documents & OfficeAuto-check: warnings
  • Rfp Response Content Generation

    pnp/sharepoint-skills

    Section-by-section proposal drafting agent. An agent skill from pnp/sharepoint-skills.

    133 GitHub stars~4.8k tokensUpdated yesterday
    Sales & SupportAuto-check passed
  • Markitdown

    ImCa0/just-laws

    Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.

    781 GitHub starsUsed in 14 repos~3.2k tokens
    Documents & OfficeAuto-check: notes
  • DOCX

    rvdbreemen/OTGW-firmware

    A skill your agent uses whenever the user wants to create, read, edit, or manipulate Word documents (.docx files).

    207 GitHub starsUsed in 33 repos~4.3k tokens
    Documents & OfficeAuto-check passed
  • Reads, creates and edits Word .docx files with python-docx, and drops to raw OOXML for tracked changes, comments and byte-exact edits.

    41k GitHub stars~2.5k tokensUpdated 3 days ago
    Documents & OfficeAuto-check passed
  • Gzh Design

    isjiamu/gzh-design-skill

    微信公众号文章排版引擎,将 Markdown 转换为可直接粘贴到公众号编辑器的 HTML。主题风格从 references/theme-index.md 注册的自定义主题库中选取,自动章节编号、关键词下划线标记、引言卡片、目录导航、代码块、图片/GIF、作者签名。支持 Markdown / Word(.docx) / PDF / 纯文本输入(非 Markdown…

    4k GitHub stars~2.2k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed

More from Infrasity-Labs/dev-gtm-claude-skills

All 26 skills in this repo
  • Content Brief

    Infrasity-Labs/dev-gtm-claude-skills

    Generates a fully structured SEO content brief for a target keyword and optionally pushes it to a Notion database.

    136 GitHub stars~2.8k tokensUpdated 3 mo ago
    Auto-check passed
  • API Docs Quality Report

    Infrasity-Labs/dev-gtm-claude-skills

    Audits any API documentation site by crawling every endpoint page and scoring each one across 5 checks: description quality, OpenAPI spec presence, body param descriptions, response codes, and…

    136 GitHub stars~2.5k tokensUpdated 3 mo ago
    Auto-check passed
  • Docs Auditor

    Infrasity-Labs/dev-gtm-claude-skills

    Audits any developer documentation site across 33 checks in 7 categories and produces a scored report (out of 100) with Pass / Warn / Fail status per check.

    136 GitHub stars~3k tokensUpdated 3 mo ago
    Auto-check passed
  • Growth Report

    Infrasity-Labs/dev-gtm-claude-skills

    Generates a 3-month SEO performance HTML report for any domain using DataForSEO data.

    136 GitHub stars~4k tokensUpdated 3 mo ago
    Auto-check passed
  • Inbox

    Infrasity-Labs/dev-gtm-claude-skills

    Email triage system that handles both one-time setup and recurring triage in a single skill.

    136 GitHub stars~4.8k tokensUpdated 3 mo ago
    Auto-check passed
  • LLMs Txt Checker

    Infrasity-Labs/dev-gtm-claude-skills

    Audits any domain's AI-readiness by using curl to directly probe robots.txt, llms.txt, and llms-full.txt, then scores each file against a structured checklist and delivers a formatted report with…

    136 GitHub stars~2.4k tokensUpdated 3 mo ago
    Auto-check passed

Works with

Questions about Brief Outline Generator

What does Brief Outline Generator do?

Generates a fully structured SEO content outline (not a finished brief) and exports it as a formatted .docx Word document. Brief Outline Generator is an agent skill from Infrasity-Labs/dev-gtm-claude-skills.docx Word document.

When should I use Brief Outline Generator?

Brief Outline Generator fits situations like: A user provides a blog title; any combination of those and asks to generate an outline; article structure; the user says create a brief for X.

How do I install Brief Outline Generator in Claude Code?

Run `npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill brief-outline-generator -a claude-code`. Or copy the skill folder (skills/brief-outline-generator in Infrasity-Labs/dev-gtm-claude-skills) into .claude/skills/brief-outline-generator in your project. Claude Code loads it when a task matches its description.

How do I install Brief Outline Generator in Codex?

Run `npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill brief-outline-generator -a codex`. Or copy the skill folder (skills/brief-outline-generator in Infrasity-Labs/dev-gtm-claude-skills) into .agents/skills/brief-outline-generator in your project. Codex loads it when a task matches its description.

Can I use Brief Outline Generator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill brief-outline-generator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/brief-outline-generator, .gemini/skills/brief-outline-generator, .github/skills/brief-outline-generator and .opencode/skills/brief-outline-generator in your project.

What does Brief Outline Generator need to run?

Going by SKILL.md and its folder, Brief Outline Generator needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Brief Outline Generator access the network?

SKILL.md names 1 domain. In commands or code: firefly.ai; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Brief Outline Generator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Brief Outline Generator use?

Brief Outline Generator is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Brief Outline Generator use?

About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.4k tokens, read only when the agent opens those files.

What are the alternatives to Brief Outline Generator?

Skills that share tags, products or a category with Brief Outline Generator: Persian Writing (ali2000hos/persian-writing, 368 stars), Rfp Response Content Generation (pnp/sharepoint-skills, 133 stars), Markitdown (ImCa0/just-laws, 781 stars) and DOCX (rvdbreemen/OTGW-firmware, 207 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Brief Outline Generator?

Infrasity-Labs (a GitHub user) maintains it in Infrasity-Labs/dev-gtm-claude-skills, which has 136 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on June 28, 2026.

Source: Infrasity-Labs/dev-gtm-claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.