Skip to content

feat: [kit] Add paper-to-project generator#175

Merged
akshatvirmani merged 4 commits into
Lamatic:mainfrom
ArushJ22:feat/paper-to-project-agent
Jun 7, 2026
Merged

feat: [kit] Add paper-to-project generator#175
akshatvirmani merged 4 commits into
Lamatic:mainfrom
ArushJ22:feat/paper-to-project-agent

Conversation

@ArushJ22
Copy link
Copy Markdown
Contributor

@ArushJ22 ArushJ22 commented Jun 6, 2026

Summary

Adds a new AgentKit called Paper-to-Project Generator.

This agent converts research papers into practical software project roadmaps by:

  • Extracting key research insights
  • Generating implementation plans
  • Creating project modules and milestones
  • Producing professional markdown reports

Features

  • Paper Analysis
  • Project Roadmap Generation
  • Project Planning
  • Markdown Report Generation

Workflow

Chat Widget
→ Paper Analysis
→ Project Roadmap
→ Project Planner
→ Report Generator
→ Chat Response

Files Added

  • Flow export
  • Model configurations
  • Prompts
  • Screenshots
  • README
  • Agent documentation

Testing

  • Successfully tested with BERT research paper abstract
  • Generates structured roadmap and markdown report
  • Files added

    • kits/paper-to-project/.gitignore — ignore .lamatic/, node_modules/, .env, .env.local
    • kits/paper-to-project/README.md — kit overview, features, workflow, tech stack, example use
    • kits/paper-to-project/agent.md — agent description (Research-to-Project Planner)
    • kits/paper-to-project/constitutions/default.md — assistant identity, safety, data handling, tone
    • kits/paper-to-project/lamatic.config.ts — kit metadata (name, author Arush John, tags, one mandatory step: research-to-project-planner, deploy/github links)
    • kits/paper-to-project/flows/research-to-project-planner.ts — flow graph (meta, inputs, references, nodes, edges)
    • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-606_generative-model-name.ts
    • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-728_generative-model-name.ts
    • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-842_generative-model-name.ts
    • kits/paper-to-project/model-configs/research-to-project-planner_llmnode-959_generative-model-name.ts
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_system_0.md
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_user_1.md
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_system_0.md
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_user_1.md
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_system_0.md
    • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_user_1.md
    • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_system_0.md
    • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_user_1.md
  • Flow: research-to-project-planner — high-level summary & node types

    • Purpose: accept a user-submitted research paper via a chat widget, extract structured paper insights, produce an implementation roadmap and detailed project plan, then render a professional Markdown report back in chat.
    • Meta/inputs/references:
      • Meta author: Arush John; inputs expose model selection bindings for four nodes (InstructorLLMNode_606, InstructorLLMNode_842, InstructorLLMNode_728, LLMNode_959).
      • References link to the kit's constitutions/, prompts/, and model-configs/ files.
    • Node types and roles:
      • triggerNode (chatTriggerNode / "Chat Widget") — entry point and UI config (bot name, branding, suggestions, colors); also has a passthrough response edge to chat.
      • dynamicNode (InstructorLLMNode) — three instances enforcing JSON schemas and using system+user prompt templates + model-config bindings:
        • InstructorLLMNode_606 ("Paper Analysis") — outputs structured fields: problem_statement, key_contributions[], methodology, models_used[], datasets_used[], evaluation_metrics[], main_findings, implementation_difficulty, estimated_project_duration.
        • InstructorLLMNode_842 ("Project Roadmap") — outputs project metadata: project_title, difficulty_level, learning_prerequisites[], tech_stack[], implementation_steps[], estimated_timeline, deployment_plan, resume_value.
        • InstructorLLMNode_728 ("Project Planner") — outputs modules[], tasks[], milestones[], risks[], deliverables[].
      • dynamicNode (LLMNode) — LLMNode_959 ("Report Generator") — consumes planner outputs and produces a professional Markdown report (prompts enforce Markdown-only formatting).
      • responseNode (chatResponseNode) — renders LLMNode_959 output into the chat response.
    • Schemas & formatting rules:
      • Instructor nodes enforce strict JSON-only output via embedded JSON schemas for machine-readable downstream consumption.
      • Final LLM node enforces Markdown-only, human-facing report formatting (no JSON/code-blocks/intro/outro).
    • Workflow / edges:
      • Linear pipeline: triggerNode → InstructorLLMNode_606 → InstructorLLMNode_842 → InstructorLLMNode_728 → LLMNode_959 → responseNode.
      • Additional direct response edge: triggerNode → responseNode for passthrough/direct responses.
    • Notable integration details
      • Each dynamic node references its prompt templates under prompts/ and a model configuration under model-configs/.
      • The flow is authored to produce machine-readable structured outputs from analysis/planning stages and a polished Markdown report for the user.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jun 6, 2026

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: 451d4ecb-a4e4-4bf8-8fb5-2d61c1ccf2ed

📥 Commits

Reviewing files that changed from the base of the PR and between fd5debd and 8cace0c.

📒 Files selected for processing (10)
  • kits/paper-to-project/README.md
  • kits/paper-to-project/agent.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_user_1.md

Walkthrough

Adds a new Lamatic kit that converts research papers into actionable project roadmaps via a chained workflow: paper analysis → roadmap generation → project planning → markdown report, including prompts, model configs, constitution, flow definition, kit metadata, and documentation.

Changes

Paper-to-Project Generator Kit

Layer / File(s) Summary
Kit structure and project documentation
kits/paper-to-project/.gitignore, kits/paper-to-project/lamatic.config.ts, kits/paper-to-project/README.md, kits/paper-to-project/agent.md
Kit metadata, step configuration, and comprehensive documentation describing the Paper-to-Project Generator's purpose, features, workflow architecture, and usage.
Safety and behavior constitution
kits/paper-to-project/constitutions/default.md
Default constitution document that defines assistant identity, safety constraints (avoiding harmful/illegal/discriminatory content), data handling (no PII logging unless instructed), and professional tone guidelines.
Workflow graph definition and execution
kits/paper-to-project/flows/research-to-project-planner.ts
Complete flow configuration exporting metadata, input bindings, node definitions (chat trigger, three instructor nodes with schemas and prompt references, report generator, response node), and execution edges that orchestrate the analysis-to-report pipeline.
Model provider and credential configuration
kits/paper-to-project/model-configs/*
Four model configuration modules (for nodes 606, 728, 842, 959) that bind each workflow stage to a generative model provider with associated credentials.
Paper analysis stage prompts
kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_*
System and user prompt templates that instruct the first node to parse research papers and extract problem statements, contributions, methodology, models, datasets, and evaluation metrics into JSON.
Roadmap generation stage prompts
kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_*
System and user prompt templates that instruct the second node to transform analysis into a project roadmap with development modules, tasks, milestones, risks, and deliverables in JSON.
Project planning stage prompts
kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_*
System and user prompt templates that instruct the third node to elaborate the roadmap into detailed implementation plans with tech stack, prerequisites, timeline, and resume value assessment, outputting JSON.
Report generation and formatting prompts
kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_*
System and user prompt templates that instruct the final node to format the accumulated planning data as a professional markdown-only report with enforced sections, no JSON/code blocks, and strict heading structure.

Suggested reviewers

  • amanintech
  • d-pamneja
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive The PR description covers workflow, features, and testing results, but omits required checklist items like file structure validation, specific config details, and validation confirmations. Complete the provided PR checklist template to confirm all file structure requirements, config validation, local testing, and GitHub Actions status are met.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding a new paper-to-project generator kit to the repository.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@ArushJ22
Copy link
Copy Markdown
Contributor Author

ArushJ22 commented Jun 6, 2026

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jun 6, 2026

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot requested review from amanintech and d-pamneja June 6, 2026 10:00
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@kits/paper-to-project/agent.md`:
- Line 21: The file ends without a trailing newline which triggers MD047; add a
single newline character at the end of the file so the final line "Professional
markdown report" is terminated with one trailing newline.

In
`@kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_system_0.md`:
- Around line 3-11: The system prompt currently directs extraction of 7 fields
but must require all 9 keys defined by the InstructorLLMNode_606 schema; update
the prompt text in
research-to-project-planner_instructor-llmnode-606_system_0.md to explicitly
list and require extraction for every InstructorLLMNode_606 schema field
(mentioning the schema name InstructorLLMNode_606 to locate it), ensure
instructions state "Provide all 9 schema keys" and enumerate them verbatim in
the prompt, and enforce that values are precise, factual, and only drawn from
the paper so downstream nodes receive a complete, stable structured payload.

In
`@kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_user_1.md`:
- Around line 3-11: The prompt in
kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_user_1.md
currently asks for a 7-field extraction but the downstream schema
InstructorLLMNode_606 requires a full 9-field JSON; update the prompt text to
explicitly request the exact nine keys required by InstructorLLMNode_606 (list
each key name in order so the model returns a deterministic JSON with those
keys) and change the instruction "Return the information in the required JSON
structure." to explicitly state "Return a JSON object with these nine keys:
<enumerate the nine schema keys exactly>" so the extractor always emits the
complete 9-field payload matching the InstructorLLMNode_606 schema.

In
`@kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_user_1.md`:
- Line 9: The prompt contains a single concatenated instruction token that
merges the five list items and "Return JSON only" into one stream, impairing
parsing; split that token into distinct list items so each appears on its own
line or as separate numbered entries (e.g., "1. Development Modules", "2.
Detailed Tasks", "3. Weekly Milestones", "4. Risks and Challenges", "5. Final
Deliverables", and a separate "Return JSON only" instruction) — update the
prompt string in research-to-project-planner_instructor-llmnode-728_user_1.md
where the concatenated instruction line appears so downstream parsers and the
planner generator functions consume each item independently.

In `@kits/paper-to-project/README.md`:
- Line 138: The README.md is missing a trailing newline which triggers MD047;
open the file and ensure it ends with a single newline character after the final
line containing "Google Gemini 2.5 Flash" (i.e., add a newline at EOF), then
save so the file ends with a terminating newline to satisfy markdownlint.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5b4f768b-28ee-47ff-b65c-4286ea073091

📥 Commits

Reviewing files that changed from the base of the PR and between 74e9e6b and 0ec9b02.

⛔ Files ignored due to path filters (3)
  • kits/paper-to-project/screenshots/sample-input.png is excluded by !**/*.png
  • kits/paper-to-project/screenshots/sample-output.png is excluded by !**/*.png
  • kits/paper-to-project/screenshots/workflow.png is excluded by !**/*.png
📒 Files selected for processing (18)
  • kits/paper-to-project/.gitignore
  • kits/paper-to-project/README.md
  • kits/paper-to-project/agent.md
  • kits/paper-to-project/constitutions/default.md
  • kits/paper-to-project/flows/research-to-project-planner.ts
  • kits/paper-to-project/lamatic.config.ts
  • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-606_generative-model-name.ts
  • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-728_generative-model-name.ts
  • kits/paper-to-project/model-configs/research-to-project-planner_instructor-llmnode-842_generative-model-name.ts
  • kits/paper-to-project/model-configs/research-to-project-planner_llmnode-959_generative-model-name.ts
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-606_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-728_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_instructor-llmnode-842_user_1.md
  • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_system_0.md
  • kits/paper-to-project/prompts/research-to-project-planner_llmnode-959_user_1.md

Comment thread kits/paper-to-project/agent.md Outdated
Comment thread kits/paper-to-project/README.md Outdated
@akshatvirmani akshatvirmani changed the title [kit] Add paper-to-project generator feat: [kit] Add paper-to-project generator Jun 6, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

:robot_face: AgentKit Structural Validation

New Contributions Detected

  • Template: kits/paper-to-project

Check Results

Check Status
No edits to existing kits ✅ Pass
Required root files present ✅ Pass
Flow .ts files present ✅ Pass
lamatic.config.ts valid ✅ Pass
No changes outside kits/ ✅ Pass

🎉 All checks passed! This contribution follows the AgentKit structure.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

Failure recorded at 2026-06-06T12:34:47Z UTC. If this PR is not fixed within 4 weeks it will be automatically closed.

@akshatvirmani
Copy link
Copy Markdown
Contributor

/validate

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

📡 Running Studio validation — results will appear here shortly.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 6, 2026

Studio Runtime Validation (Phase 2)

Studio validation passed. The kit loaded successfully in Lamatic Studio.

This PR is ready for final review and merge.

@akshatvirmani
Copy link
Copy Markdown
Contributor

@ArushJ22 can you check the GitHub action above? lamatic.config.ts is failing

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@kits/paper-to-project/lamatic.config.ts`:
- Line 2: The configuration's name field uses machine-readable kebab-case
("paper-to-project") but should use the human-readable title used across docs;
update the name property in lamatic.config.ts to the user-facing title
"Paper-to-Project Generator" so it matches the established pattern and CI checks
(locate the name: "paper-to-project" entry in lamatic.config.ts and replace it
with the human-readable string).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: e5703bb2-537e-44ce-804a-82fdbae089d9

📥 Commits

Reviewing files that changed from the base of the PR and between 0ec9b02 and 1f54747.

📒 Files selected for processing (1)
  • kits/paper-to-project/lamatic.config.ts

Comment thread kits/paper-to-project/lamatic.config.ts Outdated
@akshatvirmani
Copy link
Copy Markdown
Contributor

/validate

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 7, 2026

📡 Running Studio validation — results will appear here shortly.

@akshatvirmani
Copy link
Copy Markdown
Contributor

@ArushJ22 can you resolve the coderabbit comments above?

@akshatvirmani
Copy link
Copy Markdown
Contributor

/validate

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 7, 2026

📡 Running Studio validation — results will appear here shortly.

@akshatvirmani akshatvirmani merged commit 58db38b into Lamatic:main Jun 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants