Install
$ agentstack add skill-ijonis-geo-lint-content-creator ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Content Creator
Self-configuring content creation pipeline. Creates SEO & GEO-optimized content matched to your project and brand voice, then validates with geo-lint until clean.
For project-specific rules (components, file naming, categories), the skill generates a local content-config skill on first use via the setup workflow.
Command Router
Parse $ARGUMENTS and route to the matching workflow:
| Argument | Workflow | |----------|----------| | setup | Auto-discover project, questionnaire, generate content-config | | create [blog\|page\|project] | Full content creation pipeline | | voice | Analyze and configure brand voice | | calendar | Plan monthly content calendar | | refresh | Re-scan project, update content-config | | (no args) | If no config exists → auto-trigger setup. Otherwise show commands. |
Pre-Flight Check
Before any workflow except setup:
- Check if
.claude/skills/content-config/SKILL.mdexists in the project root. - If missing → inform the user: "No project content config found. Running setup first..." Then auto-trigger the
setupworkflow. - If found → read it into context and proceed with the requested workflow.
Workflow: setup
Three phases: auto-discover → questionnaire → generate.
Phase 1: Auto-Discovery
Run these steps silently, collecting results into a discovery report:
1. Framework Detection
- Read
package.jsondependencies and devDependencies for:next,astro,@astrojs/*,gatsby,hugo,nuxt,vite,remix,@11ty/eleventy - Check for config files:
next.config.*,astro.config.*,nuxt.config.*,gatsby-config.*,.eleventy.js - Record: framework name + version
2. Content Directories
- Search for common patterns:
content/,src/content/,posts/,blog/,pages/,articles/,src/pages/ - If
geo-lint.config.tsexists → read itscontentPaths - Record: all content directories and file extensions (
.md,.mdx,.astro,.html)
3. Frontmatter Schema
- Read 5–10 representative content files across detected directories
- Parse YAML frontmatter (lines between
---delimiters) - Compute the union of all field names; classify each as required (present in >80% of files) or optional
- Record: field schema with types inferred from values
4. Categories
- Extract unique values from
categoryandcategoriesfrontmatter fields across all content - Cross-reference with
geo-lint.config.tscategoriesarray if present - Record: canonical category list
5. Authors
- Extract unique
authorvalues from all content frontmatter - Record: author names
6. Locales & i18n
- Detect from: frontmatter
localefields, file naming patterns (.de.mdx,.en.mdx), directory patterns (/de/,/en/) - Check
geo-lint.config.tsi18n config if present - Record: locales and default locale
7. Site URL
- Check in order:
geo-lint.config.tssiteUrl →package.jsonhomepage → framework configsite/urlfield - Record: URL or "not found"
8. Image Directories
- Search for:
public/images/,static/images/,assets/images/,src/assets/ - Record: directories found
9. Components (MDX projects only)
- If
.mdxfiles exist → scan for JSX component usage patterns (`80% of files, with inferred types]
Optional Frontmatter
[List fields present in <80% of files]
Canonical Categories
[Comma-separated list, or "None configured — add to geo-lint.config.ts"]
File Naming
[Convention discovered — e.g., "kebab-case.mdx" or "slug.de.mdx / slug.en.mdx"]
Languages
[Locales discovered + default locale, or "Single language"]
Components
[MDX component names found, or "N/A — no MDX components detected"]
Content Creation Workflow
- Duplicate check — scan existing content for topic overlap before writing
- Keyword research — use WebSearch, purchase-intent first
- Write — follow schema above, apply brand voice, use components where appropriate
- Validate — run
npx geo-lint --format=json, filter to new file - Fix all violations — errors AND warnings, max 5 passes
- Cross-link — add 2-3 internal links, update 1-2 existing posts
New content MUST ship with zero geo-lint violations.
Validation Commands
npx geo-lint --format=json # Full project lint (JSON output) npx geo-lint --root=. # Full project lint (human-readable) npx geo-lint --rules # Show all 92 rules with fix strategies
---
## Reference Guides
Load these on demand — do not read them all into context at once:
| Reference | When to load |
|-----------|-------------|
| `references/brand_guidelines.md` | During `setup` (voice selection) and `voice` workflow |
| `references/content_frameworks.md` | During `create` (template selection) |
| `references/social_media_optimization.md` | When creating social media content |
| `assets/content_calendar_template.md` | During `calendar` workflow |
| `scripts/brand_voice_analyzer.py` | During `voice` workflow (optional — requires Python) |
## Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [IJONIS](https://github.com/IJONIS)
- **Source:** [IJONIS/geo-lint](https://github.com/IJONIS/geo-lint)
- **License:** MIT
- **Homepage:** https://ijonis.com
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.