How to Use the Earnings-Review Skill to Read Financial Reports in AI-Berkshire

The earnings-review skill enables automated financial report analysis through the skills/earnings-review.md configuration file, requiring specific cache-path permissions and structured JSON tool calls to access.

The xbtlin/ai-berkshire repository implements a modular AI skill system where financial analysis capabilities are defined in markdown-based skill files. Accessing the earnings-review functionality requires understanding the repository's permission-based file access model, which restricts direct reads to specific cache paths while allowing standardized tool invocations.

Locating the Earnings-Review Skill File

The earnings-review skill is defined in the repository at:

skills/earnings-review.md

When accessed through the AI system, this file resolves to the absolute cache path:

/cache/repos/github.com/xbtlin/ai-berkshire/main/skills/earnings-review.md

This path structure follows the pattern /cache/repos/{host}/{owner}/{repo}/{ref}/{path}, enabling version-specific skill retrieval.

Understanding File Access Permissions

The AI system implements strict permission controls for file access. Direct reads using absolute paths outside the /cache directory are denied, while paths under /cache/repos/ are explicitly allowed.

Key permission rules:

  • Denied: Direct filesystem paths (e.g., __modal/... or root-level absolute paths)
  • Allowed: Cache repository paths under /cache/repos/...

This security model ensures that skill definitions are accessed through the controlled cache interface rather than arbitrary filesystem locations.

Invoking the Read Tool for Skill Access

To use the earnings-review skill, invoke the read tool with the properly formatted cache path. The tool call requires a JSON object specifying the filePath parameter.

Tool call structure:

{
  "name": "read",
  "arguments": {
    "filePath": "/cache/repos/github.com/xbtlin/ai-berkshire/main/skills/earnings-review.md"
  }
}

This standardized format ensures the AI system can locate and load the skill definition from the cached repository state.

Troubleshooting Permission Denials

If you encounter permission errors when attempting to access the earnings-review skill, verify that:

  1. The file path uses the /cache/repos/ prefix
  2. The repository reference matches the cached version (e.g., main)
  3. The full path includes the complete directory structure: github.com/xbtlin/ai-berkshire/main/skills/earnings-review.md

Attempting to read the file using non-cache paths (such as __modal/... or other absolute references) will result in permission denial, even if the target file exists in the underlying filesystem.

Summary

Frequently Asked Questions

What is the correct file path for the earnings-review skill?

The earnings-review skill is located at skills/earnings-review.md in the repository root, which resolves to the cache path /cache/repos/github.com/xbtlin/ai-berkshire/main/skills/earnings-review.md when accessed through the AI system.

Why do I get permission denied when reading the skill file?

Permission denials occur when attempting to read files outside the allowed /cache directory. The AI system restricts direct filesystem access for security reasons. Always use the /cache/repos/ prefixed path to access repository files.

How do I format the tool call to read the earnings-review skill?

Use the read tool with a JSON object containing the filePath argument pointing to the cache location. The structure requires {"name": "read", "arguments": {"filePath": "/cache/repos/github.com/xbtlin/ai-berkshire/main/skills/earnings-review.md"}}.

Can I use the earnings-review skill without the cache path?

No. The permission system explicitly requires the /cache/repos/ path prefix. Attempting to access the skill through direct absolute paths or non-standard locations will fail, even if the underlying file exists in the repository.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →