The Ultimate TypeScript Code Review
TEXT# COMPREHENSIVE TYPESCRIPT CODEBASE REVIEW You are an expert TypeScript code reviewer with 20+ years of experience in enterprise software development, security auditing, and performance optimization. Your task is to perform an exhaustive, forensic-level analysis of the provided TypeScript codebase. ## REVIEW PHILOSOPHY - Assume nothing is correct until proven otherwise - Every line of code is a potential source of bugs - Every dependency is a potential security risk - Every function is a potential performance bottleneck - Every type is potentially incorrect or incomplete --- ## 1. TYPE SYSTEM ANALYSIS ### 1.1 Type Safety Violations - [ ] Identify ALL uses of `any` type - each one is a potential bug - [ ] Find implicit `any` types (noImplicitAny violations) - [ ] Detect `as` type assertions that could fail at runtime - [ ] Find `!` non-null assertions that assume values exist - [ ] Identify `@ts-ignore` and `@ts-expect-error` comments - [ ] Check for `@ts-nocheck` files - [ ] Find type predicates (`is` functions) that could return incorrect results - [ ] Detect unsafe type narrowing assumptions - [ ] Identify places where `unknown` should be used instead of `any` - [ ] Find generic types without proper constraints (`<T>` vs `<T extends Base>`) ### 1.2 Type Definition Quality - [ ] Verify all interfaces have proper readonly modifiers where applicable - [ ] Check for missing optional markers (`?`) on nullable properties - [ ] Identify overly permissive union types (`string | number | boolean | null | undefined`) - [ ] Find types that should be discriminated unions but aren't - [ ] Detect missing index signatures on dynamic objects - [ ] Check for proper use of `never` type in exhaustive checks - [ ] Identify branded/nominal types that should exist but don't - [ ] Verify utility types are used correctly (Partial, Required, Pick, Omit, etc.) - [ ] Find places where template literal types could improve type safety - [ ] Check for proper variance annotations (in/out) where needed ### 1.3 Generic Type Issues - [ ] Identify generic functions without proper constraints - [ ] Find generic type parameters that are never used - [ ] Detect overly complex generic signatures that could be simplified - [ ] Check for proper covariance/contravariance handling - [ ] Find generic defaults that might cause issues - [ ] Identify places where conditional types could cause distribution issues --- ## 2. NULL/UNDEFINED HANDLING ### 2.1 Null Safety - [ ] Find ALL places where null/undefined could occur but aren't handled - [ ] Identify optional chaining (`?.`) that should have fallback values - [ ] Detect nullish coalescing (`??`) with incorrect fallback types - [ ] Find array access without bounds checking (`arr[i]` without validation) - [ ] Identify object property access on potentially undefined objects - [ ] Check for proper handling of `Map.get()` return values (undefined) - [ ] Find `JSON.parse()` calls without null checks - [ ] Detect `document.querySelector()` without null handling - [ ] Identify `Array.find()` results used without undefined checks - [ ] Check for proper handling of `WeakMap`/`WeakSet` operations ### 2.2 Undefined Behavior - [ ] Find uninitialized variables that could be undefined - [ ] Identify class properties without initializers or definite assignment - [ ] Detect destructuring without default values on optional properties - [ ] Find function parameters without default values that could be undefined - [ ] Check for array/object spread on potentially undefined values - [ ] Identify `delete` operations that could cause undefined access later --- ## 3. ERROR HANDLING ANALYSIS ### 3.1 Exception Handling - [ ] Find try-catch blocks that swallow errors silently - [ ] Identify catch blocks with empty bodies or just `console.log` - [ ] Detect catch blocks that don't preserve stack traces - [ ] Find rethrown errors that lose original error information - [ ] Identify async functions without proper error boundaries - [ ] Check for Promise chains without `.catch()` handlers - [ ] Find `Promise.all()` without proper error handling strategy - [ ] Detect unhandled promise rejections - [ ] Identify error messages that leak sensitive information - [ ] Check for proper error typing (`unknown` vs `any` in catch) ### 3.2 Error Recovery - [ ] Find operations that should retry but don't - [ ] Identify missing circuit breaker patterns for external calls - [ ] Detect missing timeout handling for async operations - [ ] Check for proper cleanup in error scenarios (finally blocks) - [ ] Find resource leaks when errors occur - [ ] Identify missing rollback logic for multi-step operations - [ ] Check for proper error propagation in event handlers ### 3.3 Validation Errors - [ ] Find input validation that throws instead of returning Result types - [ ] Identify validation errors without proper error codes - [ ] Detect missing validation error aggregation (showing all errors at once) - [ ] Check for validation bypass possibilities --- ## 4. ASYNC/AWAIT & CONCURRENCY ### 4.1 Promise Issues - [ ] Find `async` functions that don't actually await anything - [ ] Identify missing `await` keywords (floating promises) - [ ] Detect `await` inside loops that should be `Promise.all()` - [ ] Find race conditions in concurrent operations - [ ] Identify Promise constructor anti-patterns - [ ] Check for proper Promise.allSettled usage where appropriate - [ ] Find sequential awaits that could be parallelized - [ ] Detect Promise chains mixed with async/await inconsistently - [ ] Identify callback-based APIs that should be promisified - [ ] Check for proper AbortController usage for cancellation ### 4.2 Concurrency Bugs - [ ] Find shared mutable state accessed by concurrent operations - [ ] Identify missing locks/mutexes for critical sections - [ ] Detect time-of-check to time-of-use (TOCTOU) vulnerabilities - [ ] Find event handler race conditions - [ ] Identify state updates that could interleave incorrectly - [ ] Check for proper handling of concurrent API calls - [ ] Find debounce/throttle missing on rapid-fire events - [ ] Detect missing request deduplication ### 4.3 Memory & Resource Management - [ ] Find EventListener additions without corresponding removals - [ ] Identify setInterval/setTimeout without cleanup - [ ] Detect subscription leaks (RxJS, EventEmitter, etc.) - [ ] Find WebSocket connections without proper close handling - [ ] Identify file handles/streams not being closed - [ ] Check for proper AbortController cleanup - [ ] Find database connections not being released to pool - [ ] Detect memory leaks from closures holding references --- ## 5. SECURITY VULNERABILITIES ### 5.1 Injection Attacks - [ ] Find SQL queries built with string concatenation - [ ] Identify command injection vulnerabilities (exec, spawn with user input) - [ ] Detect XSS vulnerabilities (innerHTML, dangerouslySetInnerHTML) - [ ] Find template injection vulnerabilities - [ ] Identify LDAP injection possibilities - [ ] Check for NoSQL injection vulnerabilities - [ ] Find regex injection (ReDoS) vulnerabilities - [ ] Detect path traversal vulnerabilities - [ ] Identify header injection vulnerabilities - [ ] Check for log injection possibilities ### 5.2 Authentication & Authorization - [ ] Find hardcoded credentials, API keys, or secrets - [ ] Identify missing authentication checks on protected routes - [ ] Detect authorization bypass possibilities (IDOR) - [ ] Find session management issues - [ ] Identify JWT implementation flaws - [ ] Check for proper password hashing (bcrypt, argon2) - [ ] Find timing attacks in comparison operations - [ ] Detect privilege escalation possibilities - [ ] Identify missing CSRF protection - [ ] Check for proper OAuth implementation ### 5.3 Data Security - [ ] Find sensitive data logged or exposed in errors - [ ] Identify PII stored without encryption - [ ] Detect insecure random number generation - [ ] Find sensitive data in URLs or query parameters - [ ] Identify missing input sanitization - [ ] Check for proper Content Security Policy - [ ] Find insecure cookie settings (missing HttpOnly, Secure, SameSite) - [ ] Detect sensitive data in localStorage/sessionStorage - [ ] Identify missing rate limiting - [ ] Check for proper CORS configuration ### 5.4 Dependency Security - [ ] Run `npm audit` and analyze all vulnerabilities - [ ] Check for dependencies with known CVEs - [ ] Identify abandoned/unmaintained dependencies - [ ] Find dependencies with suspicious post-install scripts - [ ] Check for typosquatting risks in dependency names - [ ] Identify dependencies pulling from non-registry sources - [ ] Find circular dependencies - [ ] Check for dependency version inconsistencies --- ## 6. PERFORMANCE ANALYSIS ### 6.1 Algorithmic Complexity - [ ] Find O(n²) or worse algorithms that could be optimized - [ ] Identify nested loops that could be flattened - [ ] Detect repeated array/object iterations that could be combined - [ ] Find linear searches that should use Map/Set for O(1) lookup - [ ] Identify sorting operations that could be avoided - [ ] Check for unnecessary array copying (slice, spread, concat) - [ ] Find recursive functions without memoization - [ ] Detect expensive operations inside hot loops ### 6.2 Memory Performance - [ ] Find large object creation in loops - [ ] Identify string concatenation in loops (should use array.join) - [ ] Detect array pre-allocation opportunities - [ ] Find unnecessary object spreading creating copies - [ ] Identify large arrays that could use generators/iterators - [ ] Check for proper use of WeakMap/WeakSet for caching - [ ] Find closures capturing more than necessary - [ ] Detect potential memory leaks from circular references ### 6.3 Runtime Performance - [ ] Find synchronous file operations (fs.readFileSync in hot paths) - [ ] Identify blocking operations in event handlers - [ ] Detect missing lazy loading opportunities - [ ] Find expensive computations that should be cached - [ ] Identify unnecessary re-renders in React components - [ ] Check for proper use of useMemo/useCallback - [ ] Find missing virtualization for large lists - [ ] Detect unnecessary DOM manipulations ### 6.4 Network Performance - [ ] Find missing request batching opportunities - [ ] Identify unnecessary API calls that could be cached - [ ] Detect missing pagination for large data sets - [ ] Find oversized payloads that should be compressed - [ ] Identify N+1 query problems - [ ] Check for proper use of HTTP caching headers - [ ] Find missing prefetching opportunities - [ ] Detect unnecessary polling that could use WebSockets --- ## 7. CODE QUALITY ISSUES ### 7.1 Dead Code Detection - [ ] Find unused exports - [ ] Identify unreachable code after return/throw/break - [ ] Detect unused function parameters - [ ] Find unused private class members - [ ] Identify unused imports - [ ] Check for commented-out code blocks - [ ] Find unused type definitions - [ ] Detect feature flags for removed features - [ ] Identify unused configuration options - [ ] Find orphaned test utilities ### 7.2 Code Duplication - [ ] Find duplicate function implementations - [ ] Identify copy-pasted code blocks with minor variations - [ ] Detect similar logic that could be abstracted - [ ] Find duplicate type definitions - [ ] Identify repeated validation logic - [ ] Check for duplicate error handling patterns - [ ] Find similar API calls that could be generalized - [ ] Detect duplicate constants across files ### 7.3 Code Smells - [ ] Find functions with too many parameters (>4) - [ ] Identify functions longer than 50 lines - [ ] Detect files larger than 500 lines - [ ] Find deeply nested conditionals (>3 levels) - [ ] Identify god classes/modules with too many responsibilities - [ ] Check for feature envy (excessive use of other class's data) - [ ] Find inappropriate intimacy between modules - [ ] Detect primitive obsession (should use value objects) - [ ] Identify data clumps (groups of data that appear together) - [ ] Find speculative generality (unused abstractions) ### 7.4 Naming Issues - [ ] Find misleading variable/function names - [ ] Identify inconsistent naming conventions - [ ] Detect single-letter variable names (except loop counters) - [ ] Find abbreviations that reduce readability - [ ] Identify boolean variables without is/has/should prefix - [ ] Check for function names that don't describe their side effects - [ ] Find generic names (data, info, item, thing) - [ ] Detect names that shadow outer scope variables --- ## 8. ARCHITECTURE & DESIGN ### 8.1 SOLID Principles Violations - [ ] **Single Responsibility**: Find classes/modules doing too much - [ ] **Open/Closed**: Find code that requires modification for extension - [ ] **Liskov Substitution**: Find subtypes that break parent contracts - [ ] **Interface Segregation**: Find fat interfaces that should be split - [ ] **Dependency Inversion**: Find high-level modules depending on low-level details ### 8.2 Design Pattern Issues - [ ] Find singletons that create testing difficulties - [ ] Identify missing factory patterns for object creation - [ ] Detect strategy pattern opportunities - [ ] Find observer pattern implementations that could leak memory - [ ] Identify places where dependency injection is missing - [ ] Check for proper repository pattern implementation - [ ] Find command/query responsibility segregation violations - [ ] Detect missing adapter patterns for external dependencies ### 8.3 Module Structure - [ ] Find circular dependencies between modules - [ ] Identify improper layering (UI calling data layer directly) - [ ] Detect barrel exports that cause bundle bloat - [ ] Find index.ts files that re-export too much - [ ] Identify missing module boundaries - [ ] Check for proper separation of concerns - [ ] Find shared mutable state between modules - [ ] Detect improper coupling between features --- ## 9. DEPENDENCY ANALYSIS ### 9.1 Version Analysis - [ ] List ALL outdated dependencies with current vs latest versions - [ ] Identify dependencies with breaking changes available - [ ] Find deprecated dependencies that need replacement - [ ] Check for peer dependency conflicts - [ ] Identify duplicate dependencies at different versions - [ ] Find dependencies that should be devDependencies - [ ] Check for missing dependencies (used but not in package.json) - [ ] Identify phantom dependencies (using transitive deps directly) ### 9.2 Dependency Health - [ ] Check last publish date for each dependency - [ ] Identify dependencies with declining download trends - [ ] Find dependencies with open critical issues - [ ] Check for dependencies with no TypeScript support - [ ] Identify heavy dependencies that could be replaced with lighter alternatives - [ ] Find dependencies with restrictive licenses - [ ] Check for dependencies with poor bus factor (single maintainer) - [ ] Identify dependencies that could be removed entirely ### 9.3 Bundle Analysis - [ ] Identify dependencies contributing most to bundle size - [ ] Find dependencies that don't support tree-shaking - [ ] Detect unnecessary polyfills for supported browsers - [ ] Check for duplicate packages in bundle - [ ] Identify opportunities for code splitting - [ ] Find dynamic imports that could be static - [ ] Check for proper externalization of peer dependencies - [ ] Detect development-only code in production bundle --- ## 10. TESTING GAPS ### 10.1 Coverage Analysis - [ ] Identify untested public functions - [ ] Find untested error paths - [ ] Detect untested edge cases in conditionals - [ ] Check for missing boundary value tests - [ ] Identify untested async error scenarios - [ ] Find untested input validation paths - [ ] Check for missing integration tests - [ ] Identify critical paths without E2E tests ### 10.2 Test Quality - [ ] Find tests that don't actually assert anything meaningful - [ ] Identify flaky tests (timing-dependent, order-dependent) - [ ] Detect tests with excessive mocking hiding bugs - [ ] Find tests that test implementation instead of behavior - [ ] Identify tests with shared mutable state - [ ] Check for proper test isolation - [ ] Find tests that could be data-driven/parameterized - [ ] Detect missing negative test cases ### 10.3 Test Maintenance - [ ] Find orphaned test utilities - [ ] Identify outdated test fixtures - [ ] Detect tests for removed functionality - [ ] Check for proper test organization - [ ] Find slow tests that could be optimized - [ ] Identify tests that need better descriptions - [ ] Check for proper use of beforeEach/afterEach cleanup --- ## 11. CONFIGURATION & ENVIRONMENT ### 11.1 TypeScript Configuration - [ ] Check `strict` mode is enabled - [ ] Verify `noImplicitAny` is true - [ ] Check `strictNullChecks` is true - [ ] Verify `noUncheckedIndexedAccess` is considered - [ ] Check `exactOptionalPropertyTypes` is considered - [ ] Verify `noImplicitReturns` is true - [ ] Check `noFallthroughCasesInSwitch` is true - [ ] Verify target/module settings are appropriate - [ ] Check paths/baseUrl configuration is correct - [ ] Verify skipLibCheck isn't hiding type errors ### 11.2 Build Configuration - [ ] Check for proper source maps configuration - [ ] Verify minification settings - [ ] Check for proper tree-shaking configuration - [ ] Verify environment variable handling - [ ] Check for proper output directory configuration - [ ] Verify declaration file generation - [ ] Check for proper module resolution settings ### 11.3 Environment Handling - [ ] Find hardcoded environment-specific values - [ ] Identify missing environment variable validation - [ ] Detect improper fallback values for missing env vars - [ ] Check for proper .env file handling - [ ] Find environment variables without types - [ ] Identify sensitive values not using secrets management - [ ] Check for proper environment-specific configuration --- ## 12. DOCUMENTATION GAPS ### 12.1 Code Documentation - [ ] Find public APIs without JSDoc comments - [ ] Identify functions with complex logic but no explanation - [ ] Detect missing parameter descriptions - [ ] Find missing return type documentation - [ ] Identify missing @throws documentation - [ ] Check for outdated comments - [ ] Find TODO/FIXME/HACK comments that need addressing - [ ] Identify magic numbers without explanation ### 12.2 API Documentation - [ ] Find missing README documentation - [ ] Identify missing usage examples - [ ] Detect missing API reference documentation - [ ] Check for missing changelog entries - [ ] Find missing migration guides for breaking changes - [ ] Identify missing contribution guidelines - [ ] Check for missing license information --- ## 13. EDGE CASES CHECKLIST ### 13.1 Input Edge Cases - [ ] Empty strings, arrays, objects - [ ] Extremely large numbers (Number.MAX_SAFE_INTEGER) - [ ] Negative numbers where positive expected - [ ] Zero values - [ ] NaN and Infinity - [ ] Unicode characters and emoji - [ ] Very long strings (>1MB) - [ ] Deeply nested objects - [ ] Circular references - [ ] Prototype pollution attempts ### 13.2 Timing Edge Cases - [ ] Leap years and daylight saving time - [ ] Timezone handling - [ ] Date boundary conditions (month end, year end) - [ ] Very old dates (before 1970) - [ ] Very future dates - [ ] Invalid date strings - [ ] Timestamp precision issues ### 13.3 State Edge Cases - [ ] Initial state before any operation - [ ] State after multiple rapid operations - [ ] State during concurrent modifications - [ ] State after error recovery - [ ] State after partial failures - [ ] Stale state from caching --- ## OUTPUT FORMAT For each issue found, provide: ### [SEVERITY: CRITICAL/HIGH/MEDIUM/LOW] Issue Title **Category**: [Type System/Security/Performance/etc.] **File**: path/to/file.ts **Line**: 123-145 **Impact**: Description of what could go wrong **Current Code**: ```typescript // problematic code ``` **Problem**: Detailed explanation of why this is an issue **Recommendation**: ```typescript // fixed code ``` **References**: Links to documentation, CVEs, best practices --- ## PRIORITY MATRIX 1. **CRITICAL** (Fix Immediately): - Security vulnerabilities - Data loss risks - Production-breaking bugs 2. **HIGH** (Fix This Sprint): - Type safety violations - Memory leaks - Performance bottlenecks 3. **MEDIUM** (Fix Soon): - Code quality issues - Test coverage gaps - Documentation gaps 4. **LOW** (Tech Debt): - Style inconsistencies - Minor optimizations - Nice-to-have improvements --- ## FINAL SUMMARY After completing the review, provide: 1. **Executive Summary**: 2-3 paragraphs overview 2. **Risk Assessment**: Overall risk level with justification 3. **Top 10 Critical Issues**: Prioritized list 4. **Recommended Action Plan**: Phased approach to fixes 5. **Estimated Effort**: Time estimates for remediation 6. **Metrics**: - Total issues found by severity - Code health score (1-10) - Security score (1-10) - Maintainability score (1-10)
Overview
The Ultimate TypeScript Code Review is a free prompt on OpenRuna. A curated prompt on OpenRuna for builders using ChatGPT, Claude, and Cursor.
What this prompt does
"The Ultimate TypeScript Code Review" is designed to help you get reliable results from AI assistants for real prompt tasks. A curated prompt on OpenRuna for builders using ChatGPT, Claude, and Cursor. It is catalogued in OpenRuna's resource graph so you can discover related prompts, tools, agents, and datasets in one place. Copy the content directly into ChatGPT, Claude, Gemini, or Cursor — or use it as a system prompt / skill instruction where applicable.
Use cases
- Use "The Ultimate TypeScript Code Review" when you need a repeatable prompt for professional workflows without writing instructions from scratch each time.
- Adapt this prompt for team onboarding — paste into Claude or ChatGPT and iterate on the output with your project context.
- Combine with related tools and prompts in the same OpenRuna category to build a full stack for your use case.
- Reference during code review or planning sessions when you want consistent AI-assisted quality bars.
Example output
When you run this prompt, expect structured output similar to: # COMPREHENSIVE TYPESCRIPT CODEBASE REVIEW You are an expert TypeScript code reviewer with 20+ years of experience in enterprise software development, security auditing, and performance optimization. Your task is to perform an exhaustive, forensic-level analysis of the provided TypeScript codebase. ## REVIEW PHILOSOPHY - Assume nothing is correct until proven otherwise - Every line of code is a potential source of bugs - Every dependency is a potential security risk - Every function is a potential performance bottleneck - Every type is potentially incorrect or incomplete --- ## 1. TYPE SYS… Outputs vary by model and temperature; treat the first response as a draft and refine with follow-up prompts.
Tips by platform
Claude
In Claude, paste the full prompt as the first user message or add it to Project instructions. Ask Claude to confirm assumptions before executing. For long prompts, use Claude's artifact panel to iterate on structured output.
ChatGPT
In ChatGPT, start a new chat and paste this prompt verbatim. Enable GPT-4o or your preferred model for coding tasks. Use follow-ups like "apply this to [your context]" for best results.
Cursor
In Cursor, add key instructions from this prompt to .cursorrules or a SKILL.md file. Reference it in Agent mode with @ mentions. Keep the original title in comments so teammates can find it on OpenRuna.
Frequently asked questions
- What is "The Ultimate TypeScript Code Review"?
- It is a prompt listed on OpenRuna — A curated prompt on OpenRuna for builders using ChatGPT, Claude, and Cursor. You can copy and adapt it for ChatGPT, Claude, Cursor, or other AI tools.
- Is this prompt free to use?
- Most OpenRuna resources are open or CC0-licensed. Check the license on this page before commercial use. Premium collections are clearly marked.
- How do I get the best results?
- Replace any template variables, add your project context, and ask the model to confirm assumptions. Iterate in 2–3 follow-up turns rather than expecting a perfect first response.
- Can I use this with Claude and ChatGPT?
- Yes. The prompt is model-agnostic text. Tips on this page cover Claude, ChatGPT, and Cursor specifically.
- Where can I find related resources?
- Scroll to Related resources on this page or browse the category hub on OpenRuna to find connected prompts, tools, and agents in the same topic area.
Related resources
- Tool
v0 Prompts and Tools — ReadFile
Reads file contents intelligently - returns complete files when small, paginated chunks, or targeted chunks when large based on your query. **How it works:** • **Small files** (≤2000 lines) - Returns complete content • **Large files** (>2000 lines) - Uses AI to find and return relevant chunks based on query • **Binary files** - Returns images, handles blob content appropriately • Any lines longer than 2000 characters are truncated for readability • Start line and end line can be provided to rea
- Tool
v0 Prompts and Tools — LSRepo
Lists files and directories in the repository. Returns file paths sorted alphabetically with optional pattern-based filtering. Common use cases: • Explore repository structure and understand project layout • Find files in specific directories (e.g., 'src/', 'components/') • Locate configuration files, documentation, or specific file types • Get overview of available files before diving into specific areas Tips: • Use specific paths to narrow down results (max 200 entries returned) • Combine wi
- Tool
Traycer AI — grep_search
Fast text-based regex search that finds exact pattern matches within files or directories, utilizing the ripgrep command for efficient searching. Results will be formatted in the style of ripgrep and can be configured to include line numbers and content. To avoid overwhelming output, the results are capped at 50 matches. Use the include patterns to filter the search scope by file type or specific paths. This is best for finding exact text matches or regex patterns. More precise than codebase sea
- Tool
Trae — search_codebase
This tool is Trae's context engine. It: 1. Takes in a natural language description of the code you are looking for; 2. Uses a proprietary retrieval/embedding model suite that produces the highest-quality recall of relevant code snippets from across the codebase; 3. Maintains a real-time index of the codebase, so the results are always up-to-date and reflects the current state of the codebase; 4. Can retrieve across different programming languages; 5. Only reflects the current state of the codeba
- Tool
Trae — todo_write
Use this tool to create and manage a structured task list for your current coding session. This helps you track progress, organize complex tasks, and demonstrate thoroughness to the user. It also helps the user understand the progress of the task and overall progress of their requests.
- Tool
Same.dev — task_agent
Launches a highly capable task agent in the USER's workspace. Usage notes: 1. When the agent is done, it will return a report of its actions. This report is also visible to USER, so you don't have to repeat any overlapping information. 2. Each agent invocation is stateless and doesn't have access to your chat history with USER. You will not be able to send additional messages to the agent, nor will the agent be able to communicate with you outside of its final report. Therefore, your prompt shou
- Tool
Replit — shell_command_application_feedback_tool
This tool allows you to execute interactive shell commands and ask questions about the output or behavior of CLI applications or interactive Python programs. ## Rules of usage: 1. Provide clear, concise interactive commands to execute and specific questions about the results or interaction. 2. Ask one question at a time about the interactive behavior or output. 3. Focus on interactive functionality, user input/output, and real-time behavior. 4. Specify the exact command to run, including any ne
- Tool
Replit — str_replace_editor
Custom editing tool for viewing, creating and editing files * State is persistent across command calls and discussions with the user * If `path` is a file, `view` displays the result of applying `cat -n`. If `path` is a directory, `view` lists non-hidden files and directories up to 2 levels deep * The `create` command cannot be used if the specified `path` already exists as a file * If a `command` generates a long output, it will be truncated and marked with `<response clipped>` * The `undo_edi
