Install
openclaw skills install @terr123123/requirement-guideA conversational requirement clarification tool with structured questioning and document generation.
openclaw skills install @terr123123/requirement-guideA conversational requirement clarification tool that guides users through structured questioning across six dimensions and assembles a structured requirement document from the gathered answers.
pytest for tests)| Dimension | Elements |
|---|---|
basic_info | project_name, version, author |
background | problem, goal, context |
functional | features, user_roles, workflows |
non_functional | performance, security, usability |
data | entities, interfaces, storage |
acceptance | criteria, timeline, constraints |
openclaw skills install requirement-guide
from src import RequirementGuide
guide = RequirementGuide()
# Start a guided session
session = guide.start_session("Inventory Management System")
# Ask questions and process answers
question = guide.ask_question(session.id)
print(question.text) # "What is the project name?"
answer = guide.process_answer(session.id, "StockFlow")
print(answer.processed) # True
# Continue the dialogue...
while True:
q = guide.ask_question(session.id)
if q is None:
break
guide.process_answer(session.id, "..." if q.required else "-")
# Generate the requirement document
doc = guide.generate_document(session.id)
print(doc.title) # "Inventory Management System"
print(doc.completeness) # 1.0
| Method | Description |
|---|---|
start_session(topic: str) -> Session | Start a new requirement gathering session |
ask_question(session_id: str) -> Question | None | Return the next unanswered question |
process_answer(session_id: str, answer: str) -> Answer | Process a user answer for the active question |
generate_document(session_id: str) -> RequirementDocument | Assemble a requirement document from gathered answers |
get_session_status(session_id: str) -> SessionStatus | Return the current session status |
completeness(session_id: str) -> float | Return the completeness ratio (0.0 - 1.0) |
abandon_session(session_id: str) -> Session | Mark a session as abandoned |
save_session(session_id: str, path: str) -> str | Persist a session to JSON |
load_session(path: str) -> Session | Load a session from JSON |
save_document(session_id: str, path: str) -> str | Persist the requirement document to JSON |
id, topic, status, questions_asked, answers, elementsid, dimension, text, requiredquestion_id, content, processedtitle, elements, completenessACTIVE, COMPLETED, ABANDONEDcd d:\openclaw-skills\business-stack\requirement-guide
python -m pytest tests/ -v --tb=short
MIT License — Free for personal and commercial use.
Terr123123