implementing-feature
Implement a feature from a product/tech spec, URL, or GitHub issue. Reads the spec, implements the feature following Streamlit patterns, and creates a merge-ready PR. Use when given a spec folder path, document URL, or issue link to implement.
Best use case
implementing-feature is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Implement a feature from a product/tech spec, URL, or GitHub issue. Reads the spec, implements the feature following Streamlit patterns, and creates a merge-ready PR. Use when given a spec folder path, document URL, or issue link to implement.
Teams using implementing-feature should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/implementing-feature/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How implementing-feature Compares
| Feature / Agent | implementing-feature | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Implement a feature from a product/tech spec, URL, or GitHub issue. Reads the spec, implements the feature following Streamlit patterns, and creates a merge-ready PR. Use when given a spec folder path, document URL, or issue link to implement.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Startups
Explore AI agent skills for startup validation, product research, growth experiments, documentation, and fast execution with small teams.
AI Agent for Product Research
Browse AI agent skills for product research, competitive analysis, customer discovery, and structured product decision support.
AI Agent for SaaS Idea Validation
Use AI agent skills for SaaS idea validation, market research, customer discovery, competitor analysis, and documenting startup hypotheses.
SKILL.md Source
# Implementing feature Implement a feature from a specification document, from reading the spec through to a merge-ready PR. ## Usage examples Use by pointing to a spec folder: ``` /implementing-feature specs/2025-12-12-menu-button ``` Or with a URL to a raw document: ``` /implementing-feature https://raw.githubusercontent.com/streamlit/streamlit/refs/heads/develop/specs/2025-12-12-menu-button/product-spec.md ``` Or with a GitHub issue (feature request as spec): ``` /implementing-feature https://github.com/streamlit/streamlit/issues/12345 ``` ## When to use - You have a spec folder, URL, or GitHub issue to implement - You want end-to-end implementation: spec → code → tests → PR - You want a guided workflow that ensures all implementation steps are followed ## Workflow Copy this checklist and track your progress: ``` Progress: - [ ] Phase 1: Read and understand the spec - [ ] Phase 2: Research and plan - [ ] Phase 3: Implement and test - [ ] Phase 4: Verify against spec - [ ] Phase 5: Finalize for merge ``` ### Phase 1: Read and understand the spec - If given a folder path (e.g., `specs/YYYY-MM-DD-feature-name`): - Read all files in the folder (specs, images, code samples) - If given a URL to a raw document: - Fetch the spec content directly from the URL - If given a GitHub issue URL: - Use the `gh` client to read the issue and all comments - Treat the issue description and discussion as the feature specification ### Phase 2: Research and plan - Search for similar existing features to follow patterns - Use the /understanding-streamlit-architecture skill to understand relevant internals - If there is technical complexity, write a tech-spec / implementation plan in `work-tmp/` ### Phase 3: Implement and test - Implement the feature based on the provided spec. Read `wiki/new-feature-guide.md` for tips. - Run `make protobuf` after any protobuf changes - Add unit tests (Python in `lib/tests/`, frontend co-located) and E2E tests in `e2e_playwright/` - Use the /debugging-streamlit skill to test and debug backend, frontend, and UI ### Phase 4: Verify against spec - Re-read the spec to verify all requirements are met; document any necessary divergences in `work-tmp/` ### Phase 5: Finalize for merge - Run /finalizing-pr skill to execute quality checks, create the PR, and make it merge-ready - Follow all steps until the PR is merge-ready ## Important notes - **Be fully autonomous** - Do NOT stop or pause to ask for confirmation. You are tasked to go from spec to merge-ready PR without human intervention. Note any open questions or ambiguities in the PR description rather than blocking on them. - **Follow Streamlit patterns** - Check existing similar features for conventions - **Reference the spec in PR** - Include spec link in PR description - **Test thoroughly** - Use /debugging-streamlit before finalizing - **Commit incrementally** - Make logical commits as you implement each phase
Related Skills
writing-spec
Writes product and tech specs for new Streamlit features. Use when designing new API commands, widgets, or significant changes that need team review before implementation.
updating-internal-docs
Review internal documentation (*.md files) against the current codebase state and propose updates for outdated or incorrect information.
understanding-streamlit-architecture
Explains Streamlit's internal architecture including backend runtime, frontend rendering, and WebSocket communication. Use when debugging cross-layer issues, understanding how features work end-to-end, planning architectural changes, or onboarding to the codebase. Covers ForwardMsg/BackMsg protocol, script rerun model, element tree, widget state management, and more.
sharing-pr-agent-artifacts
Uploads agent-generated artifacts (specs, plans, learnings) to the streamlit.wiki for sharing via PR comments. Use when you have agent artifacts to share with reviewers.
generating-changelog
Generates polished website release notes between two git tags for docs.streamlit.io. Use when preparing a new Streamlit release or reviewing changes between versions.
create-github-issue-feature-from-specification
Create GitHub Issue for feature request from specification file using feature_request.yml template.
create-github-issues-feature-from-implementation-plan
Create GitHub Issues from implementation plan phases using feature_request.yml or chore_request.yml templates.
breakdown-feature-prd
Prompt for creating Product Requirements Documents (PRDs) for new features, based on an Epic.
breakdown-feature-implementation
Prompt for creating detailed feature implementation plans, following Epoch monorepo structure.
implementing-zero-trust-with-hashicorp-boundary
Implement HashiCorp Boundary for identity-aware zero trust infrastructure access management with dynamic credential brokering, session recording, and Vault integration.
implementing-zero-trust-with-beyondcorp
Deploy Google BeyondCorp Enterprise zero trust access controls using Identity-Aware Proxy (IAP), context-aware access policies, device trust validation, and Access Context Manager to enforce identity and posture-based access to GCP resources and internal applications.
implementing-zero-trust-network-access
Implementing Zero Trust Network Access (ZTNA) in cloud environments by configuring identity-aware proxies, micro-segmentation, continuous verification with conditional access policies, and replacing traditional VPN-based access with BeyondCorp-style architectures across AWS, Azure, and GCP.