golemcloud/golem/golem-add-cors-go

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Configuring CORS on a Go agent's HTTP endpoints. Use when the user asks to enable CORS, allow cross-origin requests, or configure allowed origins for HTTP endpoints in a Go Golem project.

Install

npx vskill@latest install golemcloud/golem/golem-add-cors-go

SKILL.md

Configuring CORS on Go HTTP Endpoints

Overview

CORS allowed-origin patterns are declared on the agent definition: mount-wide with Mount.CORS, or per route with golem.EndpointCORS. Origins declared at both levels are unioned for that route. CORS is metadata only — declaring it advertises the origins the platform will allow; the gateway handles preflight automatically.

Steps

  1. Set mount-level origins with Mount.CORS to cover every endpoint.
  2. Add per-endpoint origins with golem.EndpointCORS(patterns...); they union with the mount list.
  3. Use `"*"` to allow all origins.

Mount-level CORS

Mount.CORS is a []string of allowed-origin patterns applied to all endpoints:

go
type ID struct{ Name string }
var Agent = golem.DefineAgent[ID](golem.Spec{
Name: "MyAgent",
HTTP: &golem.Mount{
Path: "/api/{name}",
CORS: []string{"https://app.example.com"}, // all endpoints
},
})
// GET /api/{name}/data — allows https://app.example.com
var GetData = Agent.Method[golem.Unit, Data]("getData", golem.HTTP(golem.GET("/data")))

Endpoint-level CORS

golem.EndpointCORS(patterns...) adds origins for one route. They are unioned with the mount-level list, not replaced:

go
var Agent = golem.DefineAgent[ID](golem.Spec{
Name: "MyAgent",
HTTP: &golem.Mount{Path: "/api/{name}", CORS: []string{"https://app.example.com"}},
})
var (
// Allows BOTH https://app.example.com AND * (all origins)
GetData = Agent.Method[golem.Unit, Data]("getData", golem.HTTP(golem.GET("/data", golem.EndpointCORS("*"))))
// Inherits mount-level only: https://app.example.com
GetOther = Agent.Method[golem.Unit, Data]("getOther", golem.HTTP(golem.GET("/other")))
)

Wildcard

Use "*" to allow all origins:

go
var Agent = golem.DefineAgent[ID](golem.Spec{
Name: "PublicAgent",
HTTP: &golem.Mount{Path: "/public/{name}", CORS: []string{"*"}},
})

CORS preflight

The platform handles OPTIONS preflight requests automatically for endpoints that have CORS configured — you do not declare an OPTIONS route yourself. The preflight response carries Access-Control-Allow-Origin, Access-Control-Allow-Methods, and Access-Control-Allow-Headers.

Key Constraints

  • Mount.CORS and golem.EndpointCORS(patterns...) both take origin patterns; the effective set for a route is the union of the two.
  • An empty CORS means no cross-origin access is allowed for that scope.
  • CORS declared in code still requires the agent to be served behind an httpApi deployment (see golem-add-http-endpoint-go).
Related Skills
SkillWhen to Load
golem-add-http-endpoint-goSet up the mount and endpoints before adding CORS
golem-add-http-auth-goRequire authentication on the endpoints
golem-http-params-goBind request path/query/header/body to method inputs

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
1,514
Repository forks
210
7-day trend score
0

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/golemcloud/golem/golem-add-cors-go/badge)](https://verified-skill.com/skills/golemcloud/golem/golem-add-cors-go)

Something wrong with this skill or its page? Tell us.