A new package that transforms unstructured developer tool ideas from text inputs into structured, actionable product specifications. Users can describe their desired tool in natural language, and the
Project description
devide-spec
Transform unstructured developer tool ideas into structured, actionable product specifications.
devide_spec is a Python package that converts natural language descriptions of developer tools into structured, well-defined specifications. It extracts key features, target users, and potential challenges, providing a clear roadmap for development.
🚀 Features
- Extracts structured specifications from unstructured text inputs
- Supports customizable LLM backends (LLM7 by default)
- Configurable via environment variables or direct API key input
- Works seamlessly with popular LangChain LLM integrations
📦 Installation
pip install devide_spec
🔧 Usage
Basic Usage (with default LLM7)
from devide_spec import devide_spec
response = devide_spec(user_input="I want a CLI tool that helps developers manage their Docker containers with a simple command interface")
print(response)
Custom LLM Integration
You can replace the default ChatLLM7 with any LangChain-compatible LLM:
Using OpenAI
from langchain_openai import ChatOpenAI
from devide_spec import devide_spec
llm = ChatOpenAI()
response = devide_spec(user_input="My tool idea...", llm=llm)
Using Anthropic
from langchain_anthropic import ChatAnthropic
from devide_spec import devide_spec
llm = ChatAnthropic()
response = devide_spec(user_input="My tool idea...", llm=llm)
Using Google Generative AI
from langchain_google_genai import ChatGoogleGenerativeAI
from devide_spec import devide_spec
llm = ChatGoogleGenerativeAI()
response = devide_spec(user_input="My tool idea...", llm=llm)
🔑 API Key Configuration
The package uses LLM7 by default. You can:
- Set your API key via environment variable:
export LLM7_API_KEY="your_api_key_here"
- Or pass it directly:
from devide_spec import devide_spec response = devide_spec(user_input="My tool idea...", api_key="your_api_key_here")
Get a free LLM7 API key at https://token.llm7.io/.
📝 Input Parameters
| Parameter | Type | Description |
|---|---|---|
user_input |
str |
The natural language description of your tool idea |
api_key |
Optional[str] |
LLM7 API key (optional if using environment variable) |
llm |
Optional[BaseChatModel] |
Custom LangChain LLM (optional, defaults to ChatLLM7) |
📌 Output
The function returns a list of structured specifications extracted from the input text, formatted to match a predefined regex pattern.
🔄 Rate Limits
- LLM7 Free Tier is sufficient for most use cases.
- For higher rate limits, use your own API key or upgrade your LLM7 plan.
📖 License
MIT
📧 Support & Issues
For bugs, feature requests, or support, please open an issue at: https://github.com/chigwell/devide-spec/issues
👤 Author
Eugene Evstafev 📧 hi@euegne.plus 🔗 GitHub: chigwell
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file devide_spec-2025.12.21174359.tar.gz.
File metadata
- Download URL: devide_spec-2025.12.21174359.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f23205392d52a13feb5a0952d53799bff35aa4eb30071d3a1d8c6c8958f3f3b4
|
|
| MD5 |
1ca2475bc1f4d1e68d78eeb3afc54fbc
|
|
| BLAKE2b-256 |
b4f49861aed89cc3bbe25f55cf174eb4741b4126236cdae260a8aa75159b2773
|
File details
Details for the file devide_spec-2025.12.21174359-py3-none-any.whl.
File metadata
- Download URL: devide_spec-2025.12.21174359-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6729c266f1f822059da32ba357246b0509bf31545ae11e88dca5df8befc2d6f
|
|
| MD5 |
263d9e236f72cdc43b1c9818919e509a
|
|
| BLAKE2b-256 |
5020a75a25a9546c7421f33bc4d86331d475b00e1c90ce824186182c87dc786a
|