refactor: Remove hardcoded Web Research section from system prompt
- Web Research instructions now come from skills/research/SKILL.md - Skills are dynamically loaded and injected via generate_skills_prompt() - Remove test_both_prompts_have_web_research test (no longer applicable) - Remove unused G3Status::research_complete() function This completes the externalization of research as a skill.
This commit is contained in:
@@ -274,23 +274,6 @@ impl G3Status {
|
||||
Self::done();
|
||||
}
|
||||
|
||||
/// Print research completion notification: "g3: N research report(s) ... [done/failed]"
|
||||
///
|
||||
/// Used for real-time notification when background research completes.
|
||||
pub fn research_complete(count: usize, all_succeeded: bool) {
|
||||
let report_word = if count == 1 { "report" } else { "reports" };
|
||||
print!(
|
||||
"{} {} research {} ...",
|
||||
Self::format_prefix(),
|
||||
count,
|
||||
report_word
|
||||
);
|
||||
if all_succeeded {
|
||||
Self::done();
|
||||
} else {
|
||||
Self::failed();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
||||
@@ -258,15 +258,6 @@ mod tests {
|
||||
assert!(non_native.contains("# Workspace Memory"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_both_prompts_have_web_research() {
|
||||
let native = get_system_prompt_for_native();
|
||||
let non_native = get_system_prompt_for_non_native();
|
||||
|
||||
assert!(native.contains("# Web Research"));
|
||||
assert!(non_native.contains("# Web Research"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_native_prompt_loaded_from_file() {
|
||||
// Verify the include_str! macro successfully loads the file
|
||||
|
||||
@@ -158,27 +158,6 @@ facts:
|
||||
3. After all work is complete, write `envelope.yaml` with facts about the completed work
|
||||
4. **THEN** call `plan_write` to mark the final item done - verification will check both files
|
||||
|
||||
# Web Research
|
||||
|
||||
When you need to look up documentation, search for resources, find data online, or research a topic to complete your task, use the **research skill**. Research runs in the background while you continue working.
|
||||
|
||||
**Use the research skill** for any web research tasks:
|
||||
- Researching APIs, SDKs, libraries, frameworks, or tools
|
||||
- Finding approaches, patterns, or best practices
|
||||
- Investigating bugs, issues, or error messages
|
||||
- Looking up documentation or specifications
|
||||
|
||||
**How to use the research skill:**
|
||||
1. Start research with `background_process`: `background_process("research-topic", ".g3/bin/g3-research 'your query'")`
|
||||
2. Continue with other work while research runs in the background (30-120 seconds)
|
||||
3. Check status: `shell(".g3/bin/g3-research --list")` or `shell(".g3/bin/g3-research --status <id>")`
|
||||
4. Read the report when ready: `read_file(".g3/research/<id>/report.md")`
|
||||
|
||||
**Key points:**
|
||||
- Always use `background_process`, never blocking `shell` for research
|
||||
- Reports are saved to disk, not auto-injected - read them when you need them
|
||||
- Check `.g3/research/<id>/status.json` for machine-readable status
|
||||
|
||||
# Workspace Memory
|
||||
|
||||
Workspace memory is automatically loaded at startup alongside AGENTS.md. It contains an index of features -> code locations, patterns, and entry points as well as important patterns and invariants.
|
||||
|
||||
Reference in New Issue
Block a user