goose icon indicating copy to clipboard operation
goose copied to clipboard

`goose configure` Documentation incorrectly references config.yaml instead of config directory

Open blackgirlbytes opened this issue 2 months ago • 5 comments

The documentation currently references config.yaml as if it's the only configuration file, but goose actually uses multiple configuration files within the ~/.config/goose/ directory. The documentation should be updated to accurately reflect this multi-file structure.

Current Problem

Documentation references like:

  • "edit it directly at ~/.config/goose/config.yaml"
  • "your config file at ~/.config/goose/config.yaml"
  • Instructions to modify config.yaml for settings that are actually stored elsewhere

Expected Behavior

Documentation should:

  1. Reference the config directory (~/.config/goose/) when discussing configuration generally
  2. Specify which specific file is used for different types of configuration
  3. Explain the purpose of each configuration file

Configuration Files Structure

~/.config/goose/
├── config.yaml              # Provider, model, extensions, general settings
├── permission.yaml          # Tool permission levels (user-configured)
├── secrets.yaml             # Secrets (when keyring is disabled)
└── permissions/             # Runtime permission decisions (auto-managed)
    └── tool_permissions.json

Files That Need Updates

The following 13 documentation files reference config.yaml and need to be reviewed and updated:

High Priority

  1. documentation/docs/guides/config-file.md - Main config documentation
  2. documentation/docs/getting-started/installation.md
  3. documentation/docs/troubleshooting.md

Medium Priority

  1. documentation/docs/getting-started/using-extensions.md
  2. documentation/docs/guides/managing-tools/tool-router.md
  3. documentation/docs/guides/subagents.mdx
  4. documentation/docs/guides/recipes/session-recipes.md
  5. documentation/docs/guides/multi-model/creating-plans.md
  6. documentation/docs/guides/multi-model/autopilot.md
  7. documentation/docs/guides/sessions/smart-context-management.md

Lower Priority

  1. documentation/docs/tutorials/isolated-development-environments.md
  2. documentation/docs/tutorials/cicd.md
  3. documentation/blog/2025-06-19-isolated-development-environments/index.md

Suggested Changes

General References

Before:

You can edit your config file at `~/.config/goose/config.yaml`

After:

Configuration files are stored in `~/.config/goose/`. The main config file is `config.yaml`.

Specific Settings

When documenting specific settings, specify which file:

Example for provider settings:

Provider and model settings are stored in `~/.config/goose/config.yaml`

Example for permissions:

Tool permissions are stored in `~/.config/goose/permission.yaml`

Add Configuration Overview Section

The main config documentation (docs/guides/config-file.md) should include a section explaining all configuration files:

## Configuration Files

goose stores configuration in multiple files within `~/.config/goose/`:

- **config.yaml** - Provider, model, extensions, and general settings
- **permission.yaml** - Tool permission levels configured via `goose configure`
- **secrets.yaml** - API keys and secrets (only when keyring is disabled)
- **permissions/tool_permissions.json** - Runtime permission decisions (auto-managed)

Related Issue

This is part of the fix for the bug reported in #4734, which identified that goose misdocuments its configuration structure. The CLI portion is being addressed in a separate issue.

Acceptance Criteria

  • [ ] All 13 documentation files have been reviewed
  • [ ] References to config.yaml are updated to either:
    • Reference the config directory generally, OR
    • Specify the correct file for the specific setting
  • [ ] Main config documentation includes overview of all config files
  • [ ] Documentation accurately reflects which settings go in which files
  • [ ] No misleading references that suggest only config.yaml is used

Additional Context

Search command to find all references:

rg "config\.yaml" documentation/ -l

blackgirlbytes avatar Oct 16 '25 00:10 blackgirlbytes

I'll .take this

anthonydmays avatar Oct 16 '25 17:10 anthonydmays

Thanks for taking this issue! Let us know if you have any questions!

github-actions[bot] avatar Oct 16 '25 17:10 github-actions[bot]

I'll take this

Shreyanshsingh23 avatar Oct 24 '25 05:10 Shreyanshsingh23

Hi @Shreyanshsingh23 - this is already in progress and being worked on!

taniandjerry avatar Oct 24 '25 20:10 taniandjerry

I was hoping the devs would merge the code PR for this..so that I could merge the related docs PR (which is the one)

blackgirlbytes avatar Oct 28 '25 19:10 blackgirlbytes

Reopening only because #5210 needs to be merged to close this

taniandjerry avatar Oct 29 '25 18:10 taniandjerry

I was hoping the devs would merge the code PR for this..so that I could merge the related docs PR (which is the one)

merged it just now! said we can merge and ignore the provider tests, but there are conflicts now to #5210 I believe

taniandjerry avatar Oct 29 '25 19:10 taniandjerry