refresh-dev-token

Re-mint a local development JWT with an existing RSA keypair and run a smoke test.

1|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/samwang0723/kenjaku --skill refresh-dev-token
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: refresh-dev-token
Source: https://github.com/samwang0723/kenjaku/tree/main/.claude/skills/refresh-dev-token
Command: npx skills add https://github.com/samwang0723/kenjaku --skill refresh-dev-token

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires bash, openssl, curl, and includes scripts (resource) components.

What problem does it solve?

Local development JWTs expire frequently and cause the browser-held token to return 401 on every API call, interrupting local testing and debugging workflows; this skill re-mints the token in place so development can continue without regenerating keypairs or restarting containers.

Core Features & Use Cases

  • Safe in-place re-minting: Uses the existing RSA keypair to generate a new JWT and writes it to the local config file so running containers pick it up from the bind mount.
  • Verification and smoke test: Decodes and displays the token expiry, performs an HTTP smoke test against the local API, and advises the developer how to update the browser token.
  • Use Case: When the geto-web frontend gets 401 errors due to an expired dev token, run this to restore authenticated access without re-running initial setup.

Quick Start

Run the refresh-dev-token skill to re-mint the local development JWT using the existing keypair, verify the new expiry, and run the smoke test against the local API.

Frequently Asked Questions about refresh-dev-token

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I refresh a local development JWT token after it expires?

To refresh a local development JWT token, re-mint it in place using the existing RSA keypair. This updates the token file so running Docker containers pick up the new authenticated session without restarting or regenerating keys.

Why does my local API return 401 errors during development?

Local API 401 errors occur when the browser-held development JWT expires. Re-minting the token with the existing keypair and updating the browser token restores authenticated access for local testing and debugging workflows.

Can I change the TTL, tenant, or principal of a dev token without regenerating the RSA keypair?

Yes, you can safely re-mint the local development JWT with new TTL, tenant, or principal parameters while keeping the existing RSA keypair and running containers intact.

Do I need bash, openssl, and curl to refresh a dev token?

Yes, refreshing the dev token requires bash, openssl, and curl. These dependencies generate the JWT using the RSA keypair, decode the expiry, and run an HTTP smoke test against the local API.

What's the best way to verify a newly minted local JWT token?

The best way to verify a newly minted local JWT is to decode and display the token expiry, then perform an HTTP smoke test against the local /api/v1/search endpoint to confirm authenticated API access.

Where should the refreshed development JWT be written for Docker containers to use?

The refreshed development JWT should be written to config/dev/dev-token.txt. Running Docker containers automatically pick up the updated token from this bind mount without requiring a container restart.