Hey @zachansen Short answer: It depends on what you explicitly hand off. Directly chaining Pickaxes won’t magically transfer “everything.” You control the carry-over via the trigger prompt and any variables you pass forward.
What actually carries over
User input you forward >> whatever you include in the next Pickaxe’s trigger prompt (or mapped vars)
Named variables >> values you store/emit and then reference downstream
Nothing else by default >> the prior chat’s full history/KB isn’t auto-available unless you deliberately pass it or re-query it
How to make chaining reliable
Define a handoff contract >> a tiny JSON envelope (e.g., goal, key facts, constraints, links) the first Pickaxe outputs and the second Pickaxe reads
Be explicit in both system prompts >> “Only use the provided handoff; do not infer missing details; ask for clarification if field X is empty”
Keep context lean >> pass just the essentials needed to answer the next question; link to docs instead of dumping big blobs
Prompt design that helps
Trigger prompts mirror each other >> same field names, same expectations
Validation step >> first Pickaxe confirms the handoff fields are populated before calling the second
Guard against inference >> “If information isn’t present in handoff, ask, don’t invent”
When you’ll hit limits
Large handoffs >> long summaries can get truncated; prefer pointers (doc IDs/URLs) and fetch on demand
Ambiguous asks >> if the next Pickaxe’s trigger is vague, it will infer; tighten the schema or add a quick clarifying question
If you need deterministic handoff
Use a Make webhook / n8n layer to carry a small, structured payload between tools (goal, context, IDs) and re-pull any heavy KB in the second step.
I go deep on this in PPA, including templates that auto-generate both system and trigger prompts so the handoff is clean. If you want, I can share a minimal handoff schema you can drop in.
Quick question - I’m finding through my testing of chaining that artifacts are not actually getting built. So, as an example, if I trigger the parent tool to trigger the sibling it just constantly refreshes and doesn’t actually build the artifact
Thanks for sharing that, Zach! Pickaxe works as a bridge between you and the AI model, so if the model takes longer, it reflects on Pickaxe too. Complex prompts, too many actions, or slower models can also add time. Try switching models to see which one responds faster since each behaves a little differently.