![[Configuring AI Coding Tools - A Practical Guide for Developers Who Want Control, Not Autopilot]] # Process and Supporting Configuration Items Need to read: - [This is a decent approach. My concern with TDD is that writing tests necessarily... \| Hacker News](https://news.ycombinator.com/item?id=47197952) [Agentic Engineering Patterns - Simon Willison's Weblog](https://simonwillison.net/guides/agentic-engineering-patterns/?utm_source=substack&utm_medium=email) - Create my CLAUDE.md and SKILL.md skills - Defining Skills prompt: I am working on creating a set of new skills to improve and refine my claude code workflows. I use Claude Code as a general-purpose tool across many domains — coding in multiple languages, blog writing, thinking partner, research, and more. Because of this diversity, I keep my global config lean and language-agnostic, pushing specifics to project-level configs. I've created a set of processes that are key to my development workflow. We are going to work collaboratively on: - Defining each process - you WILL ask my follow-up questions to make sure you understand the process. As part of process definition we will define the inputs and outputs to each process and what process the outputs feed into. The outputs do not need to be explicit net new deliverables. An output of "updated code" that is fed into the Test Code process is sufficient. - Break down the process into sub-processes, if necessary. For example, requirement validation may require market research, mock interviews with different agent personas to validate an idea, etc. to get to the end result - Propose a set of Claude Code skills we can create to complete the processes and sub-processes. The skills can all be user invoked. They can be agent invoked if it makes sense. They should work in the way where I can be in the driver's seat, but if I want to have agents own the flow I can have the process run autonomously. - We will create the definition of the skill, define whether it can be agent invoked and recommend whether it is installed at the global or project-level. The image attached includes the processes I've defined. Let me know what you think and if you're ready to move on with this process. Writing Skills principle that needs to be captured in the create-skills skill: What are the inputs? from user or what agent needs to read? what are the outputs? ## 2. Create Specs and Repo - Create a "second brain" on the project that AI can update after each update ### 2.1 Scoping - Determine the broad purpose and value objective of the application - Use LLMs to brainstorm and document key features - Collaborate with LLMs to create an initial Project Requirements Document (PRD) - **Reverse prompting technique**: Ask ChatGPT to interview you about your project with questions and follow-ups, then have it write everything neatly ### 2.2 Technical Planning - Define what needs to be included in the different levels of 'specifications' for spec driven develop - make templates. - What are the different specifications needed? - Always start any feature development with code by asking it to look around and consider different options, don't start the work yet - Have is consider scale - Need to have reliable branch naming (i.e., /feature/some-feature) - Determine your technical stack (framework, language, runtime) - Select UI component libraries - Conduct high-level cost analysis - Create functional and technical specification files - Create a project file documenting structure, build process, and run instructions - Technical Planning - Dependencies, external services, architecture decisions ### 2.3 Requirement Validation - Market Research ### 2.4 Iterative Brainstorming - How to encourage setting up ways to measure success of anything I do (features, blog posts, linkedin posts), into the brain storming steps - How to encourage good brainstorming for ideas and for specification and design? - **Refine with AI:** Some key question to ensure you’re working in the Problem Space instead of Solution Space: - “Reverse engineer the problem I’m trying to solve based on this dump.” - “Take a step back. What open-ended questions should I be asking myself before diving into implementation?” ### 2.5 Prototypes / Pattern Creation - For a brand new project what are the steps you need to do yourself to establish design and patterns? - As we establish define patterns this skill should evoke or propose changes to claude.md to document these define patterns ### 2.6 Create Repo and Environment ```bash # Create and initialize project mkdir project-name && cd project-name git init ``` #### Create CLAUDE.md Based on the domain and technical stack, configure claude to have the necessary context and skills to work most effectively. Think about APIs (Twitter, foodara), products (postgreSQL, etc.), domains (vector search, agent orchestrations, home automation), etc. #### New Hooks - Create safety hooks to prevent dangerous actions based on the Bash commands you anticipate to run - Permission rules can't catch `psql -c "DROP TABLE users"` because the SQL is inside the argument string. A hook script can inspect the full command text and reject it. This is the strongest safeguard. ### 2.7 Create and Update Docs - Include an index.md file so agents can use this as reference. the docuemnts will act as the project's second brain and should remain updated. ## 3. Create Plan ### 3.0 Research Codebase ### 3.1 Define Feature ### 3.2 Definition of Done ### 3.3 Implementation Plan 1. Use your PRD, file structure, technical stack, and packages with a reasoning LLM 2. Generate a detailed step-by-step development plan 3. Save instructions as a `.md` file for iterative implementation 4. For specialized packages, use Claude's "add document" functionality to include documentation and example code 5. - Dependency Mapping and envionemnt management - Task decomposition / sizing ### 3.4 Iterative Brainstorming ### 3.5 Create / Update Plan ## 4. Develop Code (Test-Driven Development) ### 4.1 Create PR, Create Branch / Worktree, Commit (When Needed) Need to update skill to just use defaults, unless i ask for something different #### Commit skill - Avoid references to “Claude” or “AI-generated” in messages - Commit in stages tied to plan/task checkpoints ### 4.2 Create Tests (Red) [Red/green TDD - Agentic Engineering Patterns - Simon Willison's Weblog](https://simonwillison.net/guides/agentic-engineering-patterns/red-green-tdd/) #### Create Tests Skill Testing Standards and Type Safety ### 4.3 Develop Code (Green) - Plug-ins - Use the LSP plug-in for your language: - [Discover and install prebuilt plugins through marketplaces - Claude Code Docs](https://code.claude.com/docs/en/discover-plugins#code-intelligence) - Hm, can cause memory issues on large projects (disable as needed) - Enable auto-updates ### 4.4 Test Code ### 4.5 Refactor ### 4.6 Code Review (Quality, Security, Performance) - An optional`/review` command for running a code review checklist before commits - `"Act as Linus Torvalds and John Carmack debating the best implementation..."` - Human review - Ask claude to think about what he would be worried about me reviewing - Loop until you're not worried - Request code reviews via sub-agents - Run tests continuously - Keep commits small and focused ### 4.7 Commit Code ### 4.8 Bug Fixes (Fix Issue, Test Fix) ## 5. Continuous Integration / Continuous Deployment (CI/CD) ### 5.1 Security Review - Include license check in CI process - Dependency Management - dependabot ### 5.2 Test ### 5.3 Build - [ ] All tests passing - [ ] Documentation complete and accurate - [ ] Environment variables documented - [ ] README includes setup and run instructions - [ ] Dependencies properly declared - [ ] Security review completed - [ ] Performance testing done - Use Claude to generate deployment documentation - Create deployment checklists - Document rollback procedures - Set up monitoring and logging ### 5.4 Deploy ### 5.5 Monitor # Quick Reference: - [[AI Tools for Productivity]] [CLI reference - Claude Code Docs](https://code.claude.com/docs/en/cli-reference) [Claude Code Best Practices · Claude Code Best Practices](https://rosmur.github.io/claudecode-best-practices/) | Shortcut | Description | Context | | -------- | ------------------------------ | --------------------------------------------------------------- | | `Ctrl+G` | Open in default text editor | Edit your prompt or custom response in your default text editor | | `Ctrl+L` | Clear terminal screen | Keeps conversation history | | `Ctrl+R` | Reverse search command history | | | `Ctrl+T` | Toggle the task list view | | | | | | ## Additional Resources - [Claude Code Best Practices](https://www.anthropic.com/engineering/claude-code-best-practices) - [Getting Good Results from Claude Code](https://www.dzombak.com/blog/2025/08/getting-good-results-from-claude-code/) - [Agent Skills Documentation](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview) - [SuperClaude Framework](https://github.com/SuperClaude-Org/SuperClaude_Framework) (for inspiration) - [Advanced Context Engineering](https://github.com/humanlayer/advanced-context-engineering-for-coding-agents/blob/main/ace-fca.md) # Personal Workflow Backlog Things I'll check out: