Extend Siri's capabilities with custom AI-powered commands. A Next.js backend service that bridges Apple Shortcuts with Claude AI, enabling intelligent voice interactions and automated tasks.
- TypeScript 94.5%
- JavaScript 2.8%
- Dockerfile 2.2%
- Shell 0.5%
| .gitea/workflows | ||
| .github/workflows | ||
| .husky | ||
| app | ||
| prisma | ||
| public | ||
| utils | ||
| .env.example | ||
| .env.test | ||
| .eslintrc.json | ||
| .gitignore | ||
| .prettierrc | ||
| .yarnrc.yml | ||
| commitlint.config.ts | ||
| Dockerfile | ||
| jest.config.ts | ||
| LICENSE | ||
| next.config.js | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| test-request.js | ||
| tsconfig.json | ||
| vercel.json | ||
| yarn.lock | ||
Siri Shortcuts
A versatile backend service that extends Siri's capabilities through custom shortcuts, enabling AI-powered voice interactions and automated tasks. Built with TypeScript and Next.js, this project demonstrates how to create a bridge between Apple's Shortcuts app and custom backend logic.
🌟 Features
- Custom Siri Commands: Extend Siri's functionality through Apple Shortcuts integration
- AI-Powered Responses: Leverages Claude AI for intelligent, context-aware responses
- Extensible Command System: Easy-to-expand architecture for adding new commands
🛠️ Technology Stack
- Framework: Next.js 15
- Language: TypeScript
- AI Integration: Anthropic API via Vercel AI Gateway
- Testing: Jest
- Deployment: Vercel
- Code Quality: ESLint, Prettier, Husky
🚀 Getting Started
-
Install dependencies
yarn install -
Set up environment variables
cp .env.example .envFill in:
USER_KEY: Your API authentication key
-
Run development server
yarn dev -
Run tests
yarn test
📱 Setting Up Shortcuts
- Create a new Shortcut in the iOS Shortcuts app
- Add "Make HTTP Request" action
- Configure the request:
- URL: Your deployed API endpoint
- Method: POST
- Headers: Content-Type: application/json
- Body:
{ "command": "your_command", "apiKey": "your_api_key", "parameters": {} }
🔍 Available Commands
- ping: Test the API connection
- time: Get the current time
- anthropic: Ask Claude AI a question
- Parameters:
{"question": "Your question here"}
- Parameters:
🔒 Security
- API key authentication required for all endpoints
- Secure headers configuration via Vercel
- Rate limiting and request validation
- HTTPS-only communication
🔮 Future Enhancements
- Add more AI-powered commands
- Implement user preferences and data storage
- Integrate with more external services