Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

featbit-go-sdk

verified

Expert knowledge for FeatBit Go Server-Side SDK integration in web servers and backend applications. Use when working with .go files, building feature flags in Go servers, implementing A/B testing in Go, or when user mentions "Go SDK", "featbit go", "feature flags golang", or "go websocket sync". Server-side only, not for client applications.

View on GitHub

Marketplace

featbit-marketplace

featbit/featbit-skills

Plugin

featbit-skills

Development Tools

Repository

featbit/featbit-skills
5stars

skills/featbit-go-sdk/SKILL.md

Last Verified

February 3, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/featbit/featbit-skills/blob/main/skills/featbit-go-sdk/SKILL.md -a claude-code --skill featbit-go-sdk

Installation paths:

Claude
.claude/skills/featbit-go-sdk/
Powered by add-skill CLI

Instructions

# FeatBit Go Server-Side SDK

Server-side SDK for feature flags management in Go applications (web servers, APIs, multi-user systems).

**Repository**: https://github.com/featbit/featbit-go-sdk  
**Go Version**: 1.13+

⚠️ **Server-Side Only**: Designed for multi-user systems. Not for client-side use.

> **Note**: This skill contains core SDK knowledge. For issues not covered here or troubleshooting problems, refer users to the [GitHub repository](https://github.com/featbit/featbit-go-sdk) for complete source code, examples, and issue tracking.

## Data Synchronization

- **WebSocket** for real-time sync with FeatBit server
- Data stored in memory by default
- Changes pushed to SDK in <100ms average
- Auto-reconnects after internet outage

## Installation

```bash
go get github.com/featbit/featbit-go-sdk
```

## Prerequisites

- **Environment Secret**: [How to get](https://docs.featbit.co/sdk/faq#how-to-get-the-environment-secret)
- **SDK URLs**: [How to get](https://docs.featbit.co/sdk/faq#how-to-get-the-sdk-urls)

## Quick Start

```go
package main

import (
	"fmt"
	"github.com/featbit/featbit-go-sdk"
	"github.com/featbit/featbit-go-sdk/interfaces"
)

func main() {
	envSecret := "<replace-with-your-env-secret>"
	streamingUrl := "ws://localhost:5100"
	eventUrl := "http://localhost:5100"

	client, err := featbit.NewFBClient(envSecret, streamingUrl, eventUrl)

	defer func() {
		if client != nil {
			// Ensure SDK shuts down cleanly and delivers events before exit
			_ = client.Close()
		}
	}()

	if err == nil && client.IsInitialized() {
		user, _ := interfaces.NewUserBuilder("<replace-with-your-user-key>").
			UserName("<replace-with-your-user-name>").
			Build()
		
		_, ed, _ := client.BoolVariation("<replace-with-your-feature-flag-key>", user, false)
		fmt.Printf("flag %s, returns %s for user %s, reason: %s \n", 
			ed.KeyName, ed.Variation, user.GetKey(), ed.Reason)
	} else {
		fmt.Println("SDK initialization failed")
	}
}
```

**Examples**: [Go Demo](https://githu

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
8167 chars