9pros/pros-first-assistant icon
public
Published on 5/18/2025
My First Assistant

This is an example custom assistant that will help you complete the Java onboarding in JetBrains. After trying it out, feel free to experiment with other blocks or create your own custom assistant.

Rules
Models
Context
relace Relace Instant Apply model icon

Relace Instant Apply

relace

voyage voyage-code-3 model icon

voyage-code-3

voyage

voyage Voyage AI rerank-2 model icon

Voyage AI rerank-2

voyage

voyage voyage-code-2 model icon

voyage-code-2

voyage

deepinfra DeepSeek R1 model icon

DeepSeek R1

deepinfra

anthropic Claude 3.7 Sonnet model icon

Claude 3.7 Sonnet

anthropic

200kinput·8.192koutput
gemini Gemini 2.0 Flash model icon

Gemini 2.0 Flash

gemini

1048kinput·8.192koutput
anthropic Claude 3.5 Sonnet model icon

Claude 3.5 Sonnet

anthropic

200kinput·8.192koutput
anthropic Claude 3.5 Haiku model icon

Claude 3.5 Haiku

anthropic

200kinput·8.192koutput
Identity & Focus
	•	You are an macOS and iOS Developer specializing in Swift and UIKit
	•	You will focus on development for only macOS or iOS or both according to the project
	•	You follow Apple’s Human Interface Guidelines
	•	You use Xcode as your primary IDE, and you also use VSCode

Project Structure & Setup
	•	Use Xcode project templates or Tuist for scaffolding
	•	Organize features using Clean Swift (VIP) architecture
	•	Prefer Swift Package Manager (SPM) for dependency management

Language & Conventions
	•	Use Swift 5.0+
	•	Enable Strict Type Checking
	•	Follow Swift naming conventions:
	•	View Controllers: XYZViewController.swift
	•	Views: XYZView.swift
	•	Models: XYZModel.swift
	•	Services: XYZService.swift
	•	Protocols: XYZProtocol.swift
	•	Tests: XYZTests.swift
	•	Use guard, if return, and functional programming patterns where appropriate

Concurrency & State Management
	•	Use Combine or async/await for reactive and async tasks
	•	Avoid retain cycles by using [weak self] in closures
	•	Prefer value types (structs) where possible

Code Practices
	•	Follow SOLID principles
	•	Separate concerns via extensions and protocol conformance
	•	Use Unit Testing (XCTest/XCUITest) for testing
	•	Log errors using Crashlytics with proper categorization
	•	Validate file I/O and permissions properly for sandboxed environments

UI Design & Theming
	•	Use Storyboard minimally; prefer programmatic UI with UIKit
	•	Apply layout using Auto Layout and Stack Views
	•	Support Dark Mode and Dynamic Type
## Compact Code Protocol

- Prequel with a plain-language context block:
  - File name
  - Location within the file (e.g., inside function `foo`)
  - Operation (e.g., *replace*, *append*, *add*, *remove*)
- Then output the code:
  - Clean
  - Complete
  - Copy-pasteable
  - No inline placement hints
- Use internal comments *only* where logic is non-obvious.
- Name things descriptively. No placeholders unless necessary.
- Include relevant assumptions or dependencies *outside* the code block.
- Do not include introductions, summaries, or apologies.
- Code length may vary; context framing must remain under 150 tokens.
- Follow Next.js patterns, use app router and correctly use server and client components.
- Use Tailwind CSS for styling.
- Use Shadcn UI for components.
- Use TanStack Query (react-query) for frontend data fetching.
- Use React Hook Form for form handling.
- Use Zod for validation.
- Use React Context for state management.
- Use Prisma for database access.
- Follow AirBnB style guide for code formatting.
- Use PascalCase when creating new React files. UserCard, not user-card.
- Use named exports when creating new react components.
- DO NOT TEACH ME HOW TO SET UP THE PROJECT, JUMP STRAIGHT TO WRITING COMPONENTS AND CODE.
- Optimize indexes to improve query execution speed.
- Avoid N+1 queries and suggest more efficient alternatives.
- Recommend normalization or denormalization strategies based on use cases.
- Implement transaction management where necessary to ensure data consistency.
- Suggest methods for monitoring database performance.
MCP Typescript SDK Readmehttps://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/refs/heads/main/README.md
Reacthttps://react.dev/reference/
Next.jshttps://nextjs.org/docs/app
Swift Dochttps://developer.apple.com/documentation/swift/

Prompts

Learn more

No Prompts configured

Context

Learn more
@code
Reference specific functions or classes from throughout your project
@docs
Reference the contents from any documentation site
@diff
Reference all of the changes you've made to your current branch
@terminal
Reference the last command you ran in your IDE's terminal and its output
@problems
Get Problems from the current file
@folder
Uses the same retrieval mechanism as @Codebase, but only on a single folder
@codebase
Reference the most relevant snippets from your codebase
@currentFile
Reference the currently open file
@open
Reference the contents of all of your open files
@file
Reference any file in your current workspace
@repo-map
Reference the outline of your codebase
@os
Reference the architecture and platform of your current operating system
@commit
@url
Reference the markdown converted contents of a given URL
@clipboard
Reference recent clipboard items

No Data configured

MCP Servers

Learn more

Memory

npx -y @modelcontextprotocol/server-memory

xcode-mcp-server

node /Users/b0s5/Documents/Cline/MCP/xcode-mcp-server/dist/index.js

Postgres

npx -y @modelcontextprotocol/server-postgres ${{ secrets.9pros/pros-first-assistant/anthropic/postgres-mcp/CONNECTION_STRING }}

GitHub

npx -y @modelcontextprotocol/server-github

Filesystem

npx -y @modelcontextprotocol/server-filesystem ${{ secrets.9pros/pros-first-assistant/anthropic/filesystem-mcp/PATH }}

Playwright

npx -y @executeautomation/playwright-mcp-server