stacklok / stacklok/toolhive

[Deferred] In-memory rate limiting for CLI / single-replica deployments

Open
#4,556 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement go
Dominant language
Go
Stars
2.2k
Forks
300
Avg merge
1d 15h
Merged PRs (30d)
184

Description

User Story

As a developer running ToolHive locally,
I want rate limiting without Redis,
so that I can enforce limits in single-process mode.

Context

Deferred — not part of the initial implementation. Created for visibility.

Could follow the same dual-mode pattern as session storage (memory vs Redis). See THV-0057.

Acceptance Criteria

  • In-memory token bucket backend
  • Same config surface as Redis-backed
  • Dual-mode pattern matching session storage

Dependencies

  • STORY-001, STORY-002 (core rate limit infrastructure)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the THV-0057 rate-limiting RFC and the core rate-limit infrastructure referenced by STORY-001 and STORY-002. Compare the existing session-storage dual-mode pattern, then verify the in-memory token bucket, matching configuration surface, and single-process behavior against the acceptance criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, redis
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.