CST 时间:管理中国标准时间与时区转换 - Openclaw Skills
作者:互联网
2026-03-27
什么是 CST 时间(中国标准时间)?
该技能为需要处理中国标准时间 (CST) 的开发人员和系统管理员提供了一站式资源。由于中国不实行夏令时,保持一致的 UTC+8 偏移量对于同步日志记录、任务调度和跨境应用开发至关重要。通过 Openclaw Skills 将此功能集成到您的工作流程中,可以确保您的脚本和系统与 Asia/Shanghai 时区保持准确对齐。
无论您是管理自托管服务器还是开发全球 Web 应用程序,cst-time 技能都为无缝时区转换提供了必要的逻辑。它弥合了本地系统时钟与标准化区域时间之间的差距,使其成为任何在华数字生态系统内运行或与之互动的用户必不可少的 Openclaw Skills 库组件。
下载入口:https://github.com/openclaw/skills/tree/main/skills/xuanpass/cst-time
安装与下载
1. ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install cst-time
2. 手动安装
将技能文件夹复制到以下位置之一
全局模式~/.openclaw/skills/
工作区
/skills/
优先级:工作区 > 本地 > 内置
3. 提示词安装
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 cst-time。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
CST 时间(中国标准时间) 应用场景
- 获取中国标准时间的当前系统时间以进行本地日志记录。
- 自动执行 UTC、EST、PST 和 CST 之间的时区转换。
- 专门针对 Asia/Shanghai 区域调度 cron 作业或后台任务。
- 为中国市场的 Web 应用程序和用户界面格式化时间戳。
- 将多区域数据库条目同步到统一的 CST 参考点。
- 该技能识别当前系统时间或接收特定的 UTC 时间戳作为输入。
- 它应用 UTC+8 偏移逻辑,确保按照中国法规不进行夏令时调整。
- 对于编程环境,它利用 Asia/Shanghai 等 IANA 时区 ID,以确保在 pytz 或 moment-timezone 等库中的兼容性。
- 然后根据用户的要求对输出进行格式化,例如 ISO 8601 或标准 YYYY-MM-DD 模式。
- 最后,该技能将格式化后的字符串或对象提供给调用代理或脚本,以便使用 Openclaw Skills 方法论进行进一步处理。
CST 时间(中国标准时间) 配置指南
要在您的环境中使用此技能,请确保您的系统支持标准时区库。对于大多数 Linux 环境,您可以使用以下命令验证设置:
TZ='Asia/Shanghai' date
对于 Openclaw Skills 中的 Python 自动化,请安装必要的时区依赖项:
pip install pytz
对于 Node.js 集成,我们建议使用 moment-timezone:
npm install moment-timezone
CST 时间(中国标准时间) 数据架构与分类体系
该技能使用标准 ISO 和区域格式处理时间数据,以保持 Openclaw Skills 集成的一致性。
| 属性 | 类型 | 描述 |
|---|---|---|
| IANA ID | 字符串 | Asia/Shanghai (CST 标准) |
| 偏移量 | 字符串 | UTC+8 (固定,无夏令时) |
| ISO 格式 | 字符串 | YYYY-MM-DDTHH:mm:ss+08:00 |
| 标准格式 | 字符串 | YYYY-MM-DD HH:mm:ss |
| 本地化格式 | 字符串 | YYYY年MM月DD日 HH:mm:ss |
name: cst-time
description: "Provides methods and tools for obtaining local host CST (China Standard Time). Invoke when user needs to get current CST time, convert time zones, or work with China Standard Time in scripts and applications."
CST Time (China Standard Time)
Overview
This skill provides comprehensive guidance for obtaining and working with China Standard Time (CST), which is UTC+8 and used throughout mainland China. It covers various methods for getting local CST time, time zone conversions, and integration with different programming languages and systems.
Purpose
CST Time skill helps in:
- Getting current CST time from local system
- Converting between different time zones and CST
- Integrating CST time handling in applications
- Scheduling tasks based on CST
- Displaying and formatting CST time correctly
- Handling daylight saving time considerations (CST doesn't observe DST)
CST Time Zone Information
Time Zone Details:
- Name: China Standard Time (CST)
- UTC Offset: UTC+8
- Daylight Saving Time: Not observed
- Region: Mainland China
- IANA Time Zone ID: Asia/Shanghai
Important Notes:
- CST is 8 hours ahead of Coordinated Universal Time (UTC)
- China does not observe daylight saving time
- CST is used consistently year-round
- Time zone ID for programming: Asia/Shanghai
Getting CST Time
1. Using System Commands
Windows (PowerShell)
Get current system time (assumed to be CST):
Get-Date
Get CST time with explicit time zone:
[System.TimeZoneInfo]::ConvertTimeBySystemTimeZoneId([DateTime]::UtcNow, "China Standard Time")
Format CST time:
Get-Date -Format "yyyy-MM-dd HH:mm:ss"
Linux/Unix (Bash)
Get current system time:
date
Get CST time explicitly:
TZ='Asia/Shanghai' date
Format CST time:
date +"%Y-%m-%d %H:%M:%S"
macOS (Bash)
Get current system time:
date
Get CST time explicitly:
TZ='Asia/Shanghai' date
2. Using Programming Languages
Python
Get current CST time:
from datetime import datetime
import pytz
# Get current CST time
cst_tz = pytz.timezone('Asia/Shanghai')
cst_time = datetime.now(cst_tz)
print(f"Current CST time: {cst_time}")
print(f"Formatted: {cst_time.strftime('%Y-%m-%d %H:%M:%S')}")
Convert UTC to CST:
from datetime import datetime
import pytz
# Get UTC time
utc_time = datetime.utcnow().replace(tzinfo=pytz.UTC)
# Convert to CST
cst_time = utc_time.astimezone(pytz.timezone('Asia/Shanghai'))
print(f"UTC: {utc_time}")
print(f"CST: {cst_time}")
Convert any timezone to CST:
from datetime import datetime
import pytz
# Example: Convert New York time to CST
ny_tz = pytz.timezone('America/New_York')
cst_tz = pytz.timezone('Asia/Shanghai')
ny_time = datetime.now(ny_tz)
cst_time = ny_time.astimezone(cst_tz)
print(f"New York: {ny_time}")
print(f"CST: {cst_time}")
JavaScript/Node.js
Get current CST time:
// Using Intl API
const cstTime = new Date().toLocaleString('zh-CN', {
timeZone: 'Asia/Shanghai',
hour12: false
});
console.log('Current CST time:', cstTime);
// Using moment-timezone (recommended)
const moment = require('moment-timezone');
const cstTime = moment().tz('Asia/Shanghai').format('YYYY-MM-DD HH:mm:ss');
console.log('Current CST time:', cstTime);
Convert UTC to CST:
const moment = require('moment-timezone');
const utcTime = moment().utc();
const cstTime = utcTime.tz('Asia/Shanghai').format('YYYY-MM-DD HH:mm:ss');
console.log('UTC:', utcTime.format());
console.log('CST:', cstTime);
Java
Get current CST time:
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
// Get current CST time
ZonedDateTime cstTime = ZonedDateTime.now(ZoneId.of("Asia/Shanghai"));
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println("Current CST time: " + cstTime.format(formatter));
Convert UTC to CST:
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.Instant;
// Get UTC time and convert to CST
Instant utcTime = Instant.now();
ZonedDateTime cstTime = utcTime.atZone(ZoneId.of("Asia/Shanghai"));
System.out.println("UTC: " + utcTime);
System.out.println("CST: " + cstTime);
Go
Get current CST time:
package main
import (
"fmt"
"time"
)
func main() {
// Get current CST time
cstTime := time.Now().In(time.FixedZone("CST", int(8*3600)))
fmt.Println("Current CST time:", cstTime.Format("2006-01-02 15:04:05"))
}
C#
Get current CST time:
using System;
// Get current CST time
TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById("China Standard Time");
DateTime cstTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, cstZone);
Console.WriteLine($"Current CST time: {cstTime:yyyy-MM-dd HH:mm:ss}");
3. Using Online APIs
World Time API:
curl "http://worldtimeapi.org/api/timezone/Asia/Shanghai"
TimezoneDB API:
curl "http://api.timezonedb.com/v1/get-time-zone?key=YOUR_API_KEY&by=zone&zone=Asia/Shanghai"
Google Maps Time Zone API:
curl "https://maps.googleapis.com/maps/api/timezone/json?location=39.9042,116.4074×tamp=1331161200&key=YOUR_API_KEY"
Time Zone Conversions
1. UTC to CST
Formula:
CST = UTC + 8 hours
Python Example:
from datetime import datetime, timedelta
# UTC to CST
utc_time = datetime.utcnow()
cst_time = utc_time + timedelta(hours=8)
print(f"UTC: {utc_time}")
print(f"CST: {cst_time}")
2. CST to UTC
Formula:
UTC = CST - 8 hours
Python Example:
from datetime import datetime, timedelta
# CST to UTC
cst_time = datetime.now()
utc_time = cst_time - timedelta(hours=8)
print(f"CST: {cst_time}")
print(f"UTC: {utc_time}")
3. Other Time Zones to CST
Common conversions:
| Time Zone | UTC Offset | CST Offset | Conversion |
|---|---|---|---|
| EST (Eastern) | UTC-5 | +13 hours | EST + 13 = CST |
| PST (Pacific) | UTC-8 | +16 hours | PST + 16 = CST |
| GMT (Greenwich) | UTC+0 | +8 hours | GMT + 8 = CST |
| JST (Japan) | UTC+9 | -1 hour | JST - 1 = CST |
| AEST (Australia) | UTC+10 | -2 hours | AEST - 2 = CST |
Formatting CST Time
Common Format Patterns
ISO 8601 Format:
2026-02-10T21:30:45+08:00
Standard Format:
2026-02-10 21:30:45
Chinese Format:
2026年2月10日 21:30:45
Time Only:
21:30:45
Date Only:
2026-02-10
Programming Language Formatting
Python:
from datetime import datetime
cst_time = datetime.now()
formats = {
'ISO 8601': cst_time.isoformat(),
'Standard': cst_time.strftime('%Y-%m-%d %H:%M:%S'),
'Chinese': cst_time.strftime('%Y年%m月%d日 %H:%M:%S'),
'Time only': cst_time.strftime('%H:%M:%S'),
'Date only': cst_time.strftime('%Y-%m-%d')
}
for name, formatted in formats.items():
print(f"{name}: {formatted}")
JavaScript:
const moment = require('moment-timezone');
const cstTime = moment().tz('Asia/Shanghai');
const formats = {
'ISO 8601': cstTime.format(),
'Standard': cstTime.format('YYYY-MM-DD HH:mm:ss'),
'Chinese': cstTime.format('YYYY年MM月DD日 HH:mm:ss'),
'Time only': cstTime.format('HH:mm:ss'),
'Date only': cstTime.format('YYYY-MM-DD')
};
for (const [name, formatted] of Object.entries(formats)) {
console.log(`${name}: ${formatted}`);
}
Best Practices
1. Time Zone Handling
Recommendations:
- Always store times in UTC and convert to CST for display
- Use IANA time zone IDs (e.g., Asia/Shanghai) instead of offsets
- Handle daylight saving time properly (CST doesn't observe DST)
- Test time zone conversions thoroughly
- Document time zone assumptions in code
2. Time Display
Recommendations:
- Display time in user's preferred format
- Include time zone information when displaying CST
- Use relative time (e.g., "2 hours ago") for recent events
- Consider cultural preferences for time formatting
- Provide options for 12-hour and 24-hour formats
3. Time Storage
Recommendations:
- Store timestamps in UTC in databases
- Include time zone information in data models
- Use appropriate data types for timestamps (e.g., TIMESTAMP)
- Consider time zone changes in historical data
- Document time zone handling in data schemas
4. Error Handling
Recommendations:
- Validate time inputs
- Handle invalid time zone IDs gracefully
- Provide clear error messages for time-related failures
- Test edge cases (leap years, time zone transitions)
- Log time-related errors for debugging
Common Use Cases
1. Scheduling Tasks
Example: Schedule a task at specific CST time:
from datetime import datetime, timedelta
import pytz
# Target CST time
target_cst = datetime(2026, 2, 10, 22, 0, 0, tzinfo=pytz.timezone('Asia/Shanghai'))
# Calculate time until task
now = datetime.now(pytz.timezone('Asia/Shanghai'))
time_until = target_cst - now
print(f"Task scheduled for: {target_cst}")
print(f"Time until task: {time_until}")
2. Logging with CST Time
Example: Log events with CST timestamps:
import logging
from datetime import datetime
import pytz
# Configure logging with CST time
cst_tz = pytz.timezone('Asia/Shanghai')
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s',
datefmt='%Y-%m-%d %H:%M:%S'
)
# Log event
logging.info("Event occurred at CST time")
3. Displaying CST Time in Web Applications
Example: Display current CST time on a webpage:
CST Time Display
Loading...
4. Converting User Input to CST
Example: Convert user-provided time to CST:
from datetime import datetime
import pytz
from dateutil import parser
# User input time (could be any format)
user_input = "2026-02-10 14:30:00"
# Parse user input
user_time = parser.parse(user_input)
# Assume user time is in their local timezone
user_tz = pytz.timezone('America/New_York')
user_time = user_tz.localize(user_time)
# Convert to CST
cst_tz = pytz.timezone('Asia/Shanghai')
cst_time = user_time.astimezone(cst_tz)
print(f"User time: {user_time}")
print(f"CST time: {cst_time}")
Troubleshooting
Common Issues
| Issue | Possible Cause | Solution |
|---|---|---|
| Wrong time displayed | System time zone not set to CST | Change system time zone to Asia/Shanghai |
| Time off by 1 hour | Daylight saving time confusion | Remember CST doesn't observe DST |
| Time conversion errors | Incorrect time zone ID | Use Asia/Shanghai instead of CST |
| Time not updating | Caching or stale data | Clear cache and refresh |
| Time display issues | Format string errors | Verify format string syntax |
Debugging Tips
-
Verify system time zone:
- Windows: Check Date & Time settings
- Linux: Check /etc/timezone or timedatectl
- macOS: Check System Preferences > Date & Time
-
Test time zone conversions:
- Use known reference times
- Verify conversions with multiple tools
- Check for daylight saving time issues
-
Monitor time-related logs:
- Look for time zone warnings
- Check for conversion errors
- Verify timestamp consistency
Conclusion
Working with CST (China Standard Time) requires understanding of time zone handling, proper conversion methods, and careful attention to formatting and display. By following the guidance in this skill, you can:
- Accurately obtain and display CST time
- Convert between different time zones and CST
- Integrate CST time handling in applications
- Schedule tasks based on CST
- Handle time-related operations correctly and consistently
Remember that CST is UTC+8 year-round and does not observe daylight saving time, which simplifies time handling compared to many other time zones. Always test time-related functionality thoroughly and handle edge cases appropriately.
相关推荐
专题
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
最新数据
相关文章
工程经理操作系统:技术领导力与团队扩展 - Openclaw Skills
Markdown 报告生成器:专业文档制作 - Openclaw Skills
Business Claw:ERPNext MCP 自动化与工作流 - Openclaw 技能
Context Engineer:Openclaw 技能的 Token 优化专家
韩国发票:自动化估价单与税务发票 - Openclaw Skills
小红书文案教练:爆款笔记生成器 - Openclaw Skills
慕尼黑 MVG & S-Bahn 实时追踪命令行工具 - Openclaw Skills
Reddit 研究技能:自动化社群洞察 - Openclaw Skills
豆包聊天:带有联网搜索功能的免费 AI 对话 - Openclaw Skills
NightPatch:自动化工作流优化 - Openclaw 技能
AI精选
