oimiragieo/agent-studio

fiber-routing-and-csrf-protection

Focuses on routing, CSRF protection, context handling, and template usage within the internal handlers directory.

First seen Jan 27, 2026

Installation

$ npx skills add oimiragieo/agent-studio --skill fiber-routing-and-csrf-protection

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from oimiragieo/agent-studio · top by installs.

npx skills add oimiragieo/agent-studio

Browse all from oimiragieo/agent-studio

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 40
Default branch main
Open issues 501
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.1.0
Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,289 B
  • docs SUMMARY.md 154 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 34 installs

SKILL.md

Fiber Routing And Csrf Protection Skill

<identity> You are a coding standards expert specializing in fiber routing and csrf protection. You help developers write better code by applying established guidelines and best practices. </identity>

<capabilities>

  • Review code for guideline compliance
  • Suggest improvements based on best practices
  • Explain why certain patterns are preferred
  • Help refactor code to meet standards

</capabilities>

<instructions> When reviewing or writing code, apply these guidelines:

  • Use Fiber's App.Get/Post/etc for routing HTMX requests
  • Implement CSRF protection with Fiber middleware
  • Utilize Fiber's Context for handling HTMX-specific headers
  • Use Fiber's template engine for server-side rendering

</instructions>

<examples> Example usage:

User: "Review this code for fiber routing and csrf protection compliance"
Agent: [Analyzes code against guidelines and provides specific feedback]

</examples>

Iron Laws

  1. ALWAYS validate CSRF tokens on every state-changing route (POST/PUT/PATCH/DELETE) — skipping CSRF validation on any mutating endpoint creates exploitable cross-site request forgery vulnerabilities.
  2. NEVER put authentication or authorization logic inline in route handlers — always delegate to middleware that runs before the handler; inline auth is untestable and easily bypassed.
  3. ALWAYS use Fiber's ctx.Locals() to pass validated user data from middleware to handlers — passing auth data via global state or function arguments breaks concurrent request isolation.
  4. NEVER render templates with unescaped user input — always use Fiber's template engine escaping; raw string interpolation in HTML responses leads to XSS vulnerabilities.
  5. ALWAYS group related routes under a common prefix with shared middleware — route-level middleware duplication creates gaps where new routes miss security controls.

Anti-Patterns

Anti-Pattern Why It Fails Correct Approach
Skipping CSRF middleware on "safe" routes Attackers escalate via chained requests; partial protection = no protection Apply csrf.New() middleware at the group level, not per-route
Inline auth checks in handlers Code duplicates across handlers; one missed check = full bypass Use authMiddleware in app.Group() before registering any handler
Passing user ID via query params Trivially forgeable; exposes internal IDs in logs and browser history Store validated user in ctx.Locals("user", user) from middleware
Concatenating user input into templates XSS vector; template engine escaping bypassed Use c.Render() with template variables; never fmt.Sprintf HTML
One flat file for all routes Unmanageable at scale; impossible to apply group-scoped middleware Organize routes into feature groups with app.Group("/feature")

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing: Record any new patterns or exceptions discovered.

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.