# Technical and software work

Neo can help with software projects from orientation through implementation and review. Give it a bounded scope, the expected behavior, and the checks that determine success.

## Common tasks

- Explain an unfamiliar repository or request flow.
- Find relevant files, dependencies, and call sites.
- Turn a specification into an implementation plan.
- Write focused code or documentation changes.
- Review a diff for correctness, maintainability, and risk.
- Propose tests and investigate failures.
- Explain an error from logs or a stack trace.
- Prepare migration or release notes.

## Start with inspection

For an unfamiliar project, ask Neo to read the relevant files and report the current architecture before editing. This reduces assumptions about frameworks, conventions, and existing abstractions.

> Inspect the authentication flow and explain where sessions are created, refreshed, and checked. Do not edit files. Include file references and identify the most likely cause of the reported redirect loop.

## Define the change

A strong technical request includes:

- the repository or directory;
- current and expected behavior;
- reproduction steps or error output;
- compatibility and performance constraints;
- tests or commands to run;
- files or systems that must not change;
- whether Neo may implement or should only advise.

## Use a safe implementation loop

1. Reproduce or understand the current behavior.
2. Inspect the relevant code and existing patterns.
3. Propose a focused approach.
4. Make the smallest coherent change.
5. Run targeted checks.
6. Review the diff and likely edge cases.
7. Summarize changes, validation, and remaining risk.

## Debug with evidence

Provide the exact error, stack trace, inputs, environment, and recent changes. Ask Neo to distinguish observed facts from hypotheses and to validate a cause before applying a fix.

Avoid changing several unrelated things at once. A narrow fix is easier to test and revert.

## Review generated code

Check security boundaries, error handling, data loss risks, dependency choices, accessibility, performance, and consistency with project conventions. Confirm imports resolve and tests actually exercised the changed behavior.

Neo can make mistakes in code. Run project checks, inspect every change, protect secrets, and use qualified review before merging or deploying consequential work.
