Add MYSELF.md user profile for agent personalization
- Add MYSELF.example.md template with identity, role, collaborators, and preferences sections - Add MYSELF.md to .gitignore (contains personal info) - Reference MYSELF.md in AGENTS.md routing table, new "About the User" section, and file index - Add setup step and routing entry in README.md
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
.env
|
.env
|
||||||
|
MYSELF.md
|
||||||
|
|||||||
14
AGENTS.md
14
AGENTS.md
@@ -6,12 +6,24 @@ The InternalAI platform aggregates company data from email, calendars, Zulip cha
|
|||||||
|
|
||||||
| I need to... | Read |
|
| I need to... | Read |
|
||||||
|---------------------------------------------|-------------------------------|
|
|---------------------------------------------|-------------------------------|
|
||||||
|
| Know who the user is and what they care about | [MYSELF.md] |
|
||||||
| Understand the company and its tools | [company-context.md] |
|
| Understand the company and its tools | [company-context.md] |
|
||||||
| Look up people, contacts, relationships | [contactdb-api.md] |
|
| Look up people, contacts, relationships | [contactdb-api.md] |
|
||||||
| Query emails, meetings, chats, documents | [dataindex-api.md] |
|
| Query emails, meetings, chats, documents | [dataindex-api.md] |
|
||||||
| Know which connector provides what data | [connectors-and-sources.md] |
|
| Know which connector provides what data | [connectors-and-sources.md] |
|
||||||
| Create a marimo analysis notebook | [notebook-patterns.md] |
|
| Create a marimo analysis notebook | [notebook-patterns.md] |
|
||||||
|
|
||||||
|
## About the User
|
||||||
|
|
||||||
|
If `MYSELF.md` exists in the project root, **read it first** before starting any workflow. It contains the user's name, role, team, frequent collaborators, and preferences. Use this context to:
|
||||||
|
|
||||||
|
- Address the user by name in notebook markdown
|
||||||
|
- Default `TARGET_PERSON` or filter values to people they work with
|
||||||
|
- Scope date ranges and topics to their stated interests
|
||||||
|
- Tailor output format to their preferences
|
||||||
|
|
||||||
|
If `MYSELF.md` does not exist, ask the user to copy `MYSELF.example.md` to `MYSELF.md` and fill it in, or proceed without personalization.
|
||||||
|
|
||||||
## API Base URLs
|
## API Base URLs
|
||||||
|
|
||||||
| Service | Swagger UI | OpenAPI JSON |
|
| Service | Swagger UI | OpenAPI JSON |
|
||||||
@@ -144,12 +156,14 @@ print(f"Found {len(emails)} emails involving Alice")
|
|||||||
|
|
||||||
## File Index
|
## File Index
|
||||||
|
|
||||||
|
- [MYSELF.md] — User identity, role, collaborators, and preferences (gitignored, copy from `MYSELF.example.md`)
|
||||||
- [company-context.md] — Business context, team structure, vocabulary
|
- [company-context.md] — Business context, team structure, vocabulary
|
||||||
- [contactdb-api.md] — ContactDB entities and REST endpoints
|
- [contactdb-api.md] — ContactDB entities and REST endpoints
|
||||||
- [dataindex-api.md] — DataIndex entity types, query modes, REST endpoints
|
- [dataindex-api.md] — DataIndex entity types, query modes, REST endpoints
|
||||||
- [connectors-and-sources.md] — Connector-to-entity-type mapping
|
- [connectors-and-sources.md] — Connector-to-entity-type mapping
|
||||||
- [notebook-patterns.md] — Marimo notebook patterns and common API workflows
|
- [notebook-patterns.md] — Marimo notebook patterns and common API workflows
|
||||||
|
|
||||||
|
[MYSELF.md]: ./MYSELF.md
|
||||||
[company-context.md]: ./docs/company-context.md
|
[company-context.md]: ./docs/company-context.md
|
||||||
[contactdb-api.md]: ./docs/contactdb-api.md
|
[contactdb-api.md]: ./docs/contactdb-api.md
|
||||||
[dataindex-api.md]: ./docs/dataindex-api.md
|
[dataindex-api.md]: ./docs/dataindex-api.md
|
||||||
|
|||||||
28
MYSELF.example.md
Normal file
28
MYSELF.example.md
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# About Me
|
||||||
|
|
||||||
|
Copy this file to `MYSELF.md` and fill in your details. The agent reads it to personalize workflows and understand your role. `MYSELF.md` is gitignored — it stays local and private.
|
||||||
|
|
||||||
|
## Identity
|
||||||
|
|
||||||
|
- **Name:** Your Name
|
||||||
|
- **Role:** e.g. Engineering Lead, Product Manager, Designer
|
||||||
|
- **Contact ID** Your contact id from the contactdb - useful to prevent a call of me
|
||||||
|
|
||||||
|
## What I work on
|
||||||
|
|
||||||
|
Brief description of your current projects, responsibilities, or focus areas. This helps the agent scope queries — e.g., if you work on GreyHaven, the agent can default to filtering meetings/emails related to that project.
|
||||||
|
|
||||||
|
## People I work with frequently
|
||||||
|
|
||||||
|
List the names of people you interact with most. The agent can use these to suggest relevant filters or default `TARGET_PERSON` values in workflows.
|
||||||
|
|
||||||
|
- Alice — role or context
|
||||||
|
- Bob — role or context
|
||||||
|
|
||||||
|
## Preferences
|
||||||
|
|
||||||
|
Any preferences for how you want workflows or analysis structured:
|
||||||
|
|
||||||
|
- **Default date range:** e.g. "last 30 days", "current quarter"
|
||||||
|
- **Preferred output format:** e.g. "tables with counts", "timeline view"
|
||||||
|
- **Topics of interest:** e.g. "hiring", "client feedback", "sprint blockers"
|
||||||
10
README.md
10
README.md
@@ -33,7 +33,13 @@ The goal is to use [opencode](https://opencode.ai) (or any LLM-powered coding to
|
|||||||
|
|
||||||
Replace `xxxxx` with your actual LiteLLM API key.
|
Replace `xxxxx` with your actual LiteLLM API key.
|
||||||
|
|
||||||
4. **(Optional) LLM filtering in workflows** — if your workflows need to classify or score entities via an LLM, copy `.env.example` to `.env` and fill in your key:
|
4. **Set up your profile** — copy the example and fill in your name, role, and contact ID so the agent can personalize workflows:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp MYSELF.example.md MYSELF.md
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **(Optional) LLM filtering in workflows** — if your workflows need to classify or score entities via an LLM, copy `.env.example` to `.env` and fill in your key:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cp .env.example .env
|
cp .env.example .env
|
||||||
@@ -55,6 +61,7 @@ The `workflows/lib` module provides an `llm_call` helper (using [mirascope](http
|
|||||||
|
|
||||||
| Topic | File |
|
| Topic | File |
|
||||||
|-------|------|
|
|-------|------|
|
||||||
|
| Your identity, role, preferences | `MYSELF.md` (copy from `MYSELF.example.md`) |
|
||||||
| Company context, tools, connectors | `docs/company-context.md` |
|
| Company context, tools, connectors | `docs/company-context.md` |
|
||||||
| People, contacts, relationships | `docs/contactdb-api.md` |
|
| People, contacts, relationships | `docs/contactdb-api.md` |
|
||||||
| Querying emails, meetings, chats, docs | `docs/dataindex-api.md` |
|
| Querying emails, meetings, chats, docs | `docs/dataindex-api.md` |
|
||||||
@@ -68,6 +75,7 @@ It also includes API base URLs, a translation table mapping natural-language que
|
|||||||
```
|
```
|
||||||
internalai-agent/
|
internalai-agent/
|
||||||
├── AGENTS.md # LLM agent routing guide (entry point)
|
├── AGENTS.md # LLM agent routing guide (entry point)
|
||||||
|
├── MYSELF.example.md # User profile template (copy to MYSELF.md)
|
||||||
├── .env.example # LLM credentials template
|
├── .env.example # LLM credentials template
|
||||||
├── docs/
|
├── docs/
|
||||||
│ ├── company-context.md # Monadical org, tools, key concepts
|
│ ├── company-context.md # Monadical org, tools, key concepts
|
||||||
|
|||||||
Reference in New Issue
Block a user