Detailed changes
@@ -103,13 +103,7 @@ func runSetGoal(cmd *cobra.Command, _ []string) error {
out := cmd.OutOrStdout()
_, _ = fmt.Fprintln(out, "")
- _, _ = fmt.Fprintln(out, "Study the goal and its description carefully.")
- _, _ = fmt.Fprintln(out, "Review referenced tickets and files to gather context before planning changes.")
- _, _ = fmt.Fprintln(out, "Add tasks once you understand the approach:")
- _, _ = fmt.Fprintln(out, " Prefer batch: `np t a -t \"first\" -d \"details\" -t \"second\" -d \"more details\"`")
- _, _ = fmt.Fprintln(out, " Single task: `np t a -t \"task title\" -d \"details\"`")
- _, _ = fmt.Fprintln(out, "")
- _, _ = fmt.Fprintln(out, "If adding tasks one at a time, run `np t` after the batch to see the resulting list.")
+ _, _ = fmt.Fprintln(out, "Study everything above carefully, the reference content, the source code, the documentation, etc. Once you've a solid understanding of how to approach resolving the request, fill out your task list. Prefer adding/updating in batch.")
return nil
}
@@ -127,10 +127,7 @@ func runUpdateGoal(cmd *cobra.Command, _ []string) error {
out := cmd.OutOrStdout()
_, _ = fmt.Fprintln(out, "")
- _, _ = fmt.Fprintln(out, "Goal updated. Ensure pending tasks still align and adjust them if necessary.")
- _, _ = fmt.Fprintln(out, "Add or update tasks to reflect the new direction:")
- _, _ = fmt.Fprintln(out, " Add multiple: `np t a -t \"first\" -d \"details\" -t \"second\" -d \"more\"`")
- _, _ = fmt.Fprintln(out, " Batch updates: `np t u -i <id1> -s <status1> -i <id2> -s <status2>`")
+ _, _ = fmt.Fprintln(out, "Goal updated. Ensure pending tasks still align with the goal and adjust them and/or add new tasks if necessary.")
return nil
}
@@ -44,7 +44,11 @@ func runResume(cmd *cobra.Command, args []string) error {
_, _ = fmt.Fprintln(cmd.OutOrStdout(), "\nResuming session. To continue:")
_, _ = fmt.Fprintln(cmd.OutOrStdout(), "1. Check the goal description above for any bug/issue/ticket ID. If present, read that ticket for full context.")
_, _ = fmt.Fprintln(cmd.OutOrStdout(), "2. Read the files and symbols referenced in the pending tasks to understand what work remains.")
- _, _ = fmt.Fprintln(cmd.OutOrStdout(), "3. Update task status as you work:")
+ _, _ = fmt.Fprintln(cmd.OutOrStdout(), "3. Add more tasks if needed. For multi-line descriptions, use literal newlines:")
+ _, _ = fmt.Fprintln(cmd.OutOrStdout(), " Single: `np t a -t \"task title\" -d \"details\"`")
+ _, _ = fmt.Fprintln(cmd.OutOrStdout(), " Batch: np t a -t \"first\" -d \"step 1 details\" -t \"second\" -d \"step 2 with")
+ _, _ = fmt.Fprintln(cmd.OutOrStdout(), " \nmore details\" -t \"third\" -d \"step three\"`")
+ _, _ = fmt.Fprintln(cmd.OutOrStdout(), "4. Update task status as you work:")
_, _ = fmt.Fprintln(cmd.OutOrStdout(), " Single: `np t u -i <task-id> -s <status>`")
_, _ = fmt.Fprintln(cmd.OutOrStdout(), " Batch: `np t u -i <id1> -s <status1> -i <id2> -s <status2>`")
_, _ = fmt.Fprintln(cmd.OutOrStdout(), " Statuses: pending, in_progress, completed, failed, cancelled")
@@ -55,14 +55,17 @@ func printExistingSession(cmd *cobra.Command, existing session.Document) error {
func printSessionStarted(cmd *cobra.Command, doc session.Document) {
out := cmd.OutOrStdout()
_, _ = fmt.Fprintf(out, "Session %s is now active for %s.\n\n", doc.SID, doc.DirPath)
-
- _, _ = fmt.Fprintln(out, "Set the goal immediately with `np g s -t \"goal title\" -d \"goal description\"`.")
- _, _ = fmt.Fprintln(out, "Include ticket numbers, file paths, and any other references inside the goal description.")
- _, _ = fmt.Fprintln(out, "Once the goal is set, read the referenced files and add tasks:")
- _, _ = fmt.Fprintln(out, " Single task: `np t a -t \"task\" -d \"details\"`")
- _, _ = fmt.Fprintln(out, " Multiple tasks: `np t a -t \"first task\" -d \"step 1 details\" -t \"second task\" -d \"step 2 with\\nmulti-line description\"`")
+ _, _ = fmt.Fprintln(out, "If you haven't already, read any provided issue/ticket/file/webpage/commit/etc. references and thoroughly mull them over. If you already see the contents above, don't re-read them. If there were no referenced files or you don't have a clear picture of the issue, you may selectively read additional relevant files until you do have a clear picture.")
+ _, _ = fmt.Fprintln(out, "Set the goal with `np g s -t \"goal title\" -d \"goal description\"`.")
+ _, _ = fmt.Fprintln(out, "Capture the most concise form of the overarching goal using no more than 20 words in the title. Elaborate _usefully_ in the description; don't just repeat the title in more flowery language. In case we're interrupted and need to pick up from this plan later, include:")
+ _, _ = fmt.Fprintln(out, "- Summaries of only the relevant portions of the referenced content. Include their URLs/IDs/hashes. Copy the user's language around the references: if they say 'look at bug REF', use 'Bug: REF' near the summary. If 'issue NUM', then 'Issue: NUM.'")
+ _, _ = fmt.Fprintln(out, "- Paths to the relevant files, and if there are particularly relevant symbols from those files, include them too. DO NOT summarise the files or symbols. Only list them if they're relevant")
+ _, _ = fmt.Fprintln(out, "- An 'Immediate thoughts:' line at the bottom. You should have enough files to have some idea of the issue and its resolution; briefly capture your immediate thoughts in this line, couching with appropriate uncertainty.")
+ _, _ = fmt.Fprintln(out, "Add single tasks with `np t a -t \"task\" -d \"details\"`, but prefer batching. For multi-line descriptions, use literal newlines:")
+ _, _ = fmt.Fprintln(out, " np t a -t \"first task\" -d \"step 1 details\" -t \"second task\" -d \"step 2 with")
+ _, _ = fmt.Fprintln(out, " \nmore details\" -t \"third task\" -d \"step three\"")
_, _ = fmt.Fprintln(out, "Keep task statuses up to date as you work:")
_, _ = fmt.Fprintln(out, " Single update: `np t u -i task-id -s in_progress|completed|failed|cancelled`")
- _, _ = fmt.Fprintln(out, " Batch updates: `np t u -i abc123 -s completed -i def456 -s in_progress`")
- _, _ = fmt.Fprintln(out, "Use `np p` whenever you need to review the full plan.")
+ _, _ = fmt.Fprintln(out, " But prefer batching: `np t u -i abc123 -s completed -i def456 -s in_progress`")
+ _, _ = fmt.Fprintln(out, "Use `np p` if you need to review the full plan.")
}