63 lines
1.7 KiB
Markdown
63 lines
1.7 KiB
Markdown
---
|
|
name: file_reader
|
|
description: "Read and summarize text-based file types only. Prefer read_file for text formats; use execute_shell_command for type detection when needed. PDF/Office/images/archives are handled by other skills."
|
|
metadata:
|
|
{
|
|
"builtin_skill_version": "1.0",
|
|
"copaw":
|
|
{
|
|
"emoji": "📄",
|
|
"requires": {}
|
|
}
|
|
}
|
|
---
|
|
# File Reader Toolbox
|
|
|
|
Use this skill when the user asks to read or summarize local text-based files. PDFs, Office documents, images, audio, and video are out of scope for this skill and should be handled by their dedicated skills/tools.
|
|
|
|
## Quick Type Check
|
|
|
|
Use a type probe before reading:
|
|
|
|
```bash
|
|
file -b --mime-type "/path/to/file"
|
|
```
|
|
|
|
If the file is large, avoid dumping the whole content; extract a small, relevant portion and summarize.
|
|
|
|
## Text-Based Files (use read_file)
|
|
|
|
Preferred for: `.txt`, `.md`, `.json`, `.yaml/.yml`, `.csv/.tsv`, `.log`, `.sql`, `ini`, `toml`, `py`, `js`, `html`, `xml` source code.
|
|
|
|
Steps:
|
|
|
|
1. Use `read_file` to fetch content.
|
|
2. Summarize key sections or show the relevant slice requested by the user.
|
|
3. For JSON/YAML, list top-level keys and important fields.
|
|
4. For CSV/TSV, show header + first few rows, then summarize columns.
|
|
|
|
## Large Logs
|
|
|
|
If the file is huge, use a tail window:
|
|
|
|
```bash
|
|
tail -n 200 "/path/to/file.log"
|
|
```
|
|
|
|
Summarize the last errors/warnings and notable patterns.
|
|
|
|
## Out of Scope
|
|
|
|
Do not handle the following in this skill (they are covered by other skills):
|
|
|
|
- PDF
|
|
- Office (docx/xlsx/pptx)
|
|
- Images
|
|
- Audio/Video
|
|
|
|
## Safety and Behavior
|
|
|
|
- Never execute untrusted files.
|
|
- Prefer reading the smallest portion necessary.
|
|
- If a tool is missing, explain the limitation and ask the user for an alternate format.
|