import gradio as gr from task_plannings import rule_engine def plan_task(task:str) -> str: task_lower = task.strip().lower() if task_lower in rule_engine: return "\n".join(rule_engine[task_lower]) else: return "Sorry, I don't have a plan for that task. Please try another." with gr.Blocks() as demo: gr.Markdown("# Rule-Based Task Planner") task_input = gr.Textbox(lines=1, placeholder="Enter a task e.g. 'Plan a study session") plan_output = gr.Textbox(lines=5, label="Sub-steps") plan_button = gr.Button("Generate Plan") def on_generate(task): return plan_task(task) plan_button.click(on_generate, inputs=task_input, outputs=plan_output) if __name__== "__main__": demo.launch()