Skip to content

Chore: Organize goose-perception share directory #40

@AaronGoldsmith

Description

@AaronGoldsmith

Data Management Challenges

The current flat directory structure in ~/.local/share/goose-perception makes it difficult to distinguish between core system files that are part of the ongoing perception loop (like WORK.md, LATEST_WORK.md, and configuration files) versus generated reports and temporary artifacts that could be safely cleaned up or archived (like OPTIMIZE.md, various DRAFT_*.md files, and analysis reports). The lack of organization complicates maintenance tasks such as disk cleanup, backup strategies, and troubleshooting, as there's no clear way to identify which files are essential for system operation versus which are disposable outputs.

Current Usage Analysis (Based on Code References)

The current .local/share/goose-perception directory has 100+ references throughout the codebase, with (almost) all files being written to the root level. This creates organizational challenges as the system scales and makes it difficult to manage different types of data.

Details

Configuration Files

  • user_prefs.yaml - User interface preferences (referenced in perception.py, agent.py, configure_interface.py)
  • PERSONALITY_SETTINGS.json - Avatar personality settings (referenced in avatar/observer_avatar_bridge.py)

Work Context Files

Referenced across multiple observer recipes for context gathering:

  • WORK.md - Work history log
  • LATEST_WORK.md - Current session activity
  • PROJECTS.md - Active projects
  • INTERACTIONS.md - Recent collaborations
  • CONTRIBUTIONS.md - GitHub/document contributions
  • INTERESTS.md - User interests

System Data Files

  • ACTIVITY-LOG.md - Activity logging (referenced in perception.py, agent.py)
  • spoken.txt - Speech transcription (referenced in perception.py)
  • words.json - Word frequency data (referenced in perception.py)
  • message_queue.json - Message queue state (referenced in message_queue.py)
  • CHROME_HISTORY.md - Browser history analysis (referenced in observer recipes)

Generated Reports & Analysis

Files created by various observer recipes:

  • AVATAR_SUGGESTIONS.json
  • AVATAR_CHATTER.md
  • ACTIONABLE_SUGGESTIONS.json
  • OPTIMIZE.md
  • FOCUS.md
  • APP_PREFERENCES.md
  • Various DRAFT_*.md files

Working Directories

  • adapted-observers/ - Customized observer recipes
  • automated-actions/daily/ - Daily automated tasks
  • automated-actions/weekly/ - Weekly automated tasks
  • working/ - Background task workspace
  • fixing/ - Code fix workspace
  • scripts/ - Extracted recipe scripts
  • avatar_state/ - Avatar state data

Other Files

  • notes-todo.txt - Apple Notes requiring attention
  • actions_taken.txt - Log of actions taken
  • FAILURES.md - Failure tracking

Example Directory Structure

~/.local/share/goose-perception/
├── README.md
├── config/
│   ├── user_prefs.yaml
│   ├── observer-config.json (in review)
│   └── personality_settings.json
├── context/
│   ├── work.md
│   ├── latest_work.md
│   ├── projects.md
│   ├── interactions.md
│   ├── contributions.md
│   └── interests.md
├── system/
│   ├── logs/
│   │   ├── activity.md
│   │   ├── spoken.txt
│   │   ├── actions_taken.txt
│   │   └── failures.md
│   ├── cache/
│   │   ├── words.json
│   │   ├── message_queue.json
│   │   └── chrome_history.md
│   └── state/
│       └── avatar_state/
├── reports/
│   ├── suggestions/
│   ├── analysis/
│   └── drafts/
├── workspace/
│   ├── working/
│   ├── fixing/
│   └── scripts/
└── automation/
    ├── observers/
    │   └── adapted/
    └── actions/
        ├── daily/
        └── weekly/
Examples of Recipe-Generated Files

Core System Files (Part of Perception Loop)

  • WORK.md - Generated by recipe-work-daily.yaml (appends work summaries)
  • LATEST_WORK.md - Generated by recipe-work-daily.yaml (current session updates)
  • INTERACTIONS.md - Generated by recipe-interactions.yaml (interaction reports)
  • CONTRIBUTIONS.md - Generated by recipe-contributions.yaml (contribution reports)
  • MEETING_ACTIONS.md - Generated by recipe-meetings-actions.yaml (meeting action items)

Generated Reports & Analysis (Could be Cleaned Up)

  • OPTIMIZE.md - Generated by recipe-optimize.yaml (optimization findings)
  • CHROME_HISTORY.md - Generated by recipe-chrome-history.yaml (browsing analysis)
  • APP_PREFERENCES.md - Generated by recipe-apps-preferences.yaml (app usage patterns)
  • AVATAR_CHATTER.md - Generated by recipe-avatar-chatter.yaml (casual conversations)
  • ACTIONABLE_SUGGESTIONS.json - Generated by recipe-actionable-suggestions.yaml
  • AVATAR_SUGGESTIONS.json - Generated by recipe-avatar-suggestions.yaml

Draft/Temporary Files (Definitely Could be Cleaned Up)

  • DRAFT_TEAM_UPDATE.md - Generated by compose_team_update.yaml
  • DRAFT_QUICK_UPDATE.md - Generated by compose_team_update.yaml
  • PR_REVIEW_CHECKLIST.md - Generated by review_pending_prs.yaml
  • SLACK_MCP_SETUP.md - Generated by setup_slack_mcp_and_post.yaml
  • READY_TO_POST_SLACK.md - Generated by setup_slack_mcp_and_post.yaml
  • DRAFT_MEETING_DETAILS.md - Generated by create_follow_up_meeting.yaml
  • DRAFT_CALENDAR_INVITE.md - Generated by create_follow_up_meeting.yaml

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions