Skip to content

Sterling - Personal AI Assistant integrating Google Tasks, Calendar, and Todoist with Gemini AI

License

Notifications You must be signed in to change notification settings

Portauw/sterling-appscripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sterling

A Google Apps Script library for intelligent task automation, integrating Google Tasks, Todoist, Google Calendar, and Gemini AI.

Buy Me A Coffee

License: MIT Google Apps Script


Quick Start

Sterling is a Google Apps Script library that you deploy once and use across multiple projects.

1. Deploy Sterling as a Library (One-Time Setup)

Prerequisites

1. Node.js and npm

2. Google Cloud Project

Create a new Google Cloud Project:

  1. Go to Google Cloud Console
  2. Create a new project (or select existing)
  3. Note your Project Number from the Dashboard (you'll need this later)

📚 How to find your project number

Note: Apps Script will automatically request permissions for required services (Tasks, Calendar, Drive, etc.) when you first run the script.


Setup Steps

# Install clasp (Google Apps Script CLI)
npm install -g @google/clasp
clasp login

# Clone Sterling
git clone https://github.com/Portauw/sterling.git
cd sterling

# Create Apps Script project and push files
clasp create --type standalone --title "Sterling Library"
clasp push

# Open in Apps Script editor
clasp open-script

In the Apps Script editor:

  1. Link Google Cloud Project:

    • Click Project SettingsChange project
    • Enter your GCP project number
  2. Deploy as Library:

    • Click DeployNew deployment
    • Select type: Library
    • Click Deploy and copy the Script ID
  3. Share Access:

    • Give view permissions to anyone who will use the library

📚 How to use Sterling in your projects →


Documentation


Features

Sterling provides intelligent automation for your task management workflow:

🔄 Task Synchronization

  • Automatically sync Google Tasks to Todoist
  • Mark completed tasks in Google Tasks
  • Smart label assignment based on task type

🤖 AI-Powered Task Enrichment

  • Enhance tasks with Gemini AI insights
  • Context-aware suggestions using Drive files
  • Natural language task understanding
  • Conversational task refinement with comments

📅 Calendar Intelligence

  • Automatic meeting preparation task creation
  • Smart scheduling that respects your work hours
  • AI-generated meeting prep prompts
  • Just-in-time task preparation

📚 Context Management

  • Automatic Drive file sync for AI context
  • Smart caching (uploads only changed files)
  • Supports multiple folder sources
  • 10-minute TTL for fresh context

📊 Productivity Insights

  • Daily briefing with critical focus items
  • Quick wins identification (2-minute tasks)
  • Schedule conflict detection
  • Priority task highlighting

Public API

The Sterling.main() function returns a Processor instance with these methods:

Core Methods

Method Description Typical Schedule
processGoogleTasks() Sync Google Tasks → Todoist Every 10 minutes
enrichTodoistTasks() AI-enhance tasks with 'enrich' label Every 10 minutes
processCalendarItems() Create meeting preparation tasks Daily, 6-7 AM
processContextData(forceUpdate?) Upload Drive files to AI context Every 5 minutes

Advanced Methods

Method Description Typical Schedule
enrichTodaysTasksForLabel(label) Batch enrich tasks with specific label Daily, 7-8 AM
generateDailyBriefing() Create executive summary task Daily, 6-7 AM
generateQuickWinsSummary() Identify 2-minute tasks from inbox Daily, 6-7 AM

📚 See detailed API documentation →


📚 See complete architecture documentation →


License

Sterling is open source software licensed under the MIT License.

Contributing

Contributions are welcome! Feel free to:

  • Report bugs and request features via GitHub Issues
  • Submit pull requests
  • Fork and adapt for your own use

Built with ❤️ by Pieter Portauw

About

Sterling - Personal AI Assistant integrating Google Tasks, Calendar, and Todoist with Gemini AI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published