Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/alibaba/anolisa/storage-resizenpx skills add alibaba/anolisa --skill storage-resizegit clone --depth 1 https://github.com/alibaba/anolisaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/alibaba/anolisa/storage-resize)<a href="https://agentmods.dev/skills/alibaba/anolisa/storage-resize"><img src="https://agentmods.dev/badge/skills/alibaba/anolisa/storage-resize.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00073 | $0.02505 |
| Opus 5 | $0.00036 | $0.01252 |
| Sonnet 5 | $0.00015 | $0.00501 |
| Haiku 4.5 | $0.00007 | $0.00250 |
Grade C, and why
storage-resize scanned grade C with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Cloud metadata endpointhighServer-side request forgery
One request to 169.254.169.254 can return temporary IAM credentials.
INSTANCE_ID=$(curl -s http://100.100.100.200/latest/meta-data/instance-id) Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
INSTANCE_ID=$(curl -s http://100.100.100.200/latest/meta-data/instance-id) How it starts
The opening of the file, as written. The whole thing — 322 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Storage resize - 磁盘扩容
核心定位
两阶段磁盘扩容流程:
- 云平台阶段:使用
aliyun-ecsskill 完成云盘扩容 - 操作系统阶段:执行分区调整和文件系统扩容
重要约束:
- ☁️ 阿里云云盘仅支持扩容,不支持缩容
- 📀 支持系统盘和数据盘两种场景
- ⚡ 在线扩容:云盘扩容后无需重启实例,通过 NVMe 重新扫描即可识别(NVMe 设备)
前置要求
1. 依赖技能
本技能依赖 aliyun-ecs skill 进行云平台操作:
- 查询磁盘信息 (
DescribeDisks) - 执行磁盘扩容 (
ResizeDisk) - 查询实例信息 (
DescribeInstances)
2. 工具安装
# 检查并安装必要工具
yum install -y cloud-utils-growpart xfsprogs e2fsprogs btrfs-progs
# 验证工具已安装
which growpart xfs_growfs resize2fs
3. 权限要求
- 阿里云 CLI 认证:需配置
aliyun configure(优先使用 EcsRamRole) - 系统权限:需要 root 权限执行分区和文件系统操作
快速开始
一键扩容流程
# 1. 确认设备名称和文件系统类型
lsblk -f /dev/nvme0n1
# 2. 云平台扩容(使用 aliyun-ecs skill)
# aliyun ecs ResizeDisk --DiskId <disk-id> --NewSize <new-size> --RegionId <region>
# 3. NVMe 设备重新扫描(让 OS 识别新容量)
echo 1 > /sys/block/nvme0n1/device/rescan_controller
# 4. 确认新容量已识别
lsblk /dev/nvme0n1
# 5. 扩容分区
growpart /dev/nvme0n1 3
# 6. 扩容文件系统(根据类型选择命令)
xfs_growfs / # XFS(使用挂载点)
resize2fs /dev/nvme0n1p3 # EXT4(使用设备路径)
# 7. 验证
df -h /
文件系统支持
| 文件系统 | 扩容命令 | 参数类型 | 备注 |
|---|---|---|---|
| XFS | xfs_growfs /mountpoint |
挂载点 | Alinux4 默认文件系统 |
| EXT4 | resize2fs /dev/vdb1 |
设备路径 | 支持在线扩容 |
| Btrfs | btrfs filesystem resize max /mountpoint |
挂载点 | 需要 btrfs-progs |
文件系统类型检测
# 方法 1: 使用 df
df -T /
# 方法 2: 使用 lsblk
lsblk -f /dev/nvme0n1p3
# 方法 3: 使用 mount
mount | grep "on / "
完整流程
步骤 1: 云平台扩容(使用 aliyun-ecs skill)
# 获取实例 ID 和地域(ECS 实例内)
INSTANCE_ID=$(curl -s http://100.100.100.200/latest/meta-data/instance-id)
REGION_ID=$(curl -s http://100.100.100.200/latest/meta-data/region-id)
# 查询系统盘信息
aliyun ecs DescribeDisks \
--RegionId $REGION_ID \
--InstanceId $INSTANCE_ID \
--DiskType system
# 执行扩容(例如:40GB → 90GB)
aliyun ecs ResizeDisk \
--DiskId d-bp1234567890abcdef \
--NewSize 90 \
--RegionId $REGION_ID
步骤 2: 操作系统内扩容
# 2.1 识别设备类型
lsblk
# 2.2 NVMe 设备重新扫描(关键步骤!)
# 云盘扩容后,NVMe 设备需要重新扫描控制器才能识别新容量
echo 1 > /sys/block/nvme0n1/device/rescan_controller
# 2.3 验证新容量已识别
lsblk /dev/nvme0n1
# 2.4 扩容分区
growpart /dev/nvme0n1 3
# 2.5 扩容文件系统
# 先确认文件系统类型
FS_TYPE=$(df -T / | tail -1 | awk '{print $2}')
if [ "$FS_TYPE" = "xfs" ]; then
xfs_growfs /
elif [ "$FS_TYPE" = "ext4" ]; then
resize2fs /dev/nvme0n1p3
elif [ "$FS_TYPE" = "btrfs" ]; then
btrfs filesystem resize max /
fi
# 2.6 验证结果
df -h /
lsblk /dev/nvme0n1
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 322 lines · 73 tokens per session scan C 190e188b2406
storage-resize is a skill published in the GitHub repository alibaba/anolisa (618 stars, last pushed yesterday), licensed Apache-2.0. It adds 73 tokens to every session and 2,505 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 2 findings (cloud metadata endpoint, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
beevibe-team-mesh-negotiation
Multi-round negotiation protocol — covers both initiator and peer roles. Use when about to call negotiate(), when receiving a intent block as a peer, or when receiving an 'escalated' sentinel from a blocked respondnegotiate. Covers proposal crafting, counter-strategy, deadlock detection, when to accept early…
beevibe-verify-pr
CI verification before marking a PR-bearing task done. Use BEFORE calling mcpbeevibeupdateprogress(done) on any session whose deliverable is a pull request — including the first dispatch (you opened the PR with gh pr create) and any revision dispatch (you pushed new commits to an existing PR). Watches the PR's…
beevibe-pre-task-setup
Cold-start git workspace setup for a fresh beevibe task. Use at the start of a session whose intent has a block but NO or block — i.e. the first dispatch of this task. Checks for an existing repo clone, pulls the base branch if present (clone if missing), prunes any per-task worktrees from earlier tasks whose work has…
beevibe-use-repo
You are the child agent inside a fresh Docker sandbox. Borrow the given GitHub repo, produce a real artifact for the goal, and export it. Do not review the repo. The proof is that it works.
spec-converge
Iteratively review an instar-development spec with multi-angle internal reviewers (security, scalability, adversarial, integration, decision-completeness, lessons-aware) and real cross-model external reviewers routed through the agent's own installed CLIs (codex → GPT-tier, gemini → Gemini-tier; one pass per available…
beevibe-discover-repo
Find the best GitHub repo for a goal, then call userepo to run it in a sandbox. Use whenever the user's goal requires a capability you don't have natively and you haven't been given a specific repo.