{"id":"eaebdc1a-3dac-44ef-916a-09ee57f16f55","shortId":"WQJDCS","kind":"skill","title":"googlesheets-automation","tagline":"Automate Google Sheets operations (read, write, format, filter, manage spreadsheets) via Rube MCP (Composio). Read/write data, manage tabs, apply formatting, and search rows programmatically.","description":"# Google Sheets Automation via Rube MCP\n\nAutomate Google Sheets workflows including reading/writing data, managing spreadsheets and tabs, formatting cells, filtering rows, and upserting records through Composio's Google Sheets toolkit.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Google Sheets connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `googlesheets`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `googlesheets`\n3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Read and Write Data\n\n**When to use**: User wants to read data from or write data to a Google Sheet\n\n**Tool sequence**:\n1. `GOOGLESHEETS_SEARCH_SPREADSHEETS` - Find spreadsheet by name if ID unknown [Prerequisite]\n2. `GOOGLESHEETS_GET_SHEET_NAMES` - Enumerate tab names to target the right sheet [Prerequisite]\n3. `GOOGLESHEETS_BATCH_GET` - Read data from one or more ranges [Required]\n4. `GOOGLESHEETS_BATCH_UPDATE` - Write data to a range or append rows [Required]\n5. `GOOGLESHEETS_VALUES_UPDATE` - Update a single specific range [Alternative]\n6. `GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND` - Append rows to end of table [Alternative]\n\n**Key parameters**:\n- `spreadsheet_id`: Alphanumeric ID from the spreadsheet URL (between '/d/' and '/edit')\n- `ranges`: A1 notation array (e.g., 'Sheet1!A1:Z1000'); always use bounded ranges\n- `sheet_name`: Tab name (case-insensitive matching supported)\n- `values`: 2D array where each inner array is a row\n- `first_cell_location`: Starting cell in A1 notation (omit to append)\n- `valueInputOption`: 'USER_ENTERED' (parsed) or 'RAW' (literal)\n\n**Pitfalls**:\n- Mis-cased or non-existent tab names error \"Sheet 'X' not found\"\n- Empty ranges may omit `valueRanges[i].values`; treat missing as empty array\n- `GOOGLESHEETS_BATCH_UPDATE` values must be a 2D array (list of lists), even for a single row\n- Unbounded ranges like 'A:Z' on sheets with >10,000 rows may cause timeouts; always bound with row limits\n- Append follows the detected `tableRange`; use returned `updatedRange` to verify placement\n\n### 2. Create and Manage Spreadsheets\n\n**When to use**: User wants to create a new spreadsheet or manage tabs within one\n\n**Tool sequence**:\n1. `GOOGLESHEETS_CREATE_GOOGLE_SHEET1` - Create a new spreadsheet [Required]\n2. `GOOGLESHEETS_ADD_SHEET` - Add a new tab/worksheet [Required]\n3. `GOOGLESHEETS_UPDATE_SHEET_PROPERTIES` - Rename, hide, reorder, or color tabs [Optional]\n4. `GOOGLESHEETS_GET_SPREADSHEET_INFO` - Get full spreadsheet metadata [Optional]\n5. `GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE` - Check if a specific tab exists [Optional]\n\n**Key parameters**:\n- `title`: Spreadsheet or sheet tab name\n- `spreadsheetId`: Target spreadsheet ID\n- `forceUnique`: Auto-append suffix if tab name exists (default true)\n- `properties.gridProperties`: Set row/column counts, frozen rows\n\n**Pitfalls**:\n- Sheet names must be unique within a spreadsheet\n- Default sheet names are locale-dependent ('Sheet1' in English, 'Hoja 1' in Spanish)\n- Don't use `index` when creating multiple sheets in parallel (causes 'index too high' errors)\n- `GOOGLESHEETS_GET_SPREADSHEET_INFO` can return 403 if account lacks access\n\n### 3. Search and Filter Rows\n\n**When to use**: User wants to find specific rows or apply filters to sheet data\n\n**Tool sequence**:\n1. `GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW` - Find first row matching exact cell value [Required]\n2. `GOOGLESHEETS_SET_BASIC_FILTER` - Apply filter/sort to a range [Alternative]\n3. `GOOGLESHEETS_CLEAR_BASIC_FILTER` - Remove existing filter [Optional]\n4. `GOOGLESHEETS_BATCH_GET` - Read filtered results [Optional]\n\n**Key parameters**:\n- `query`: Exact text value to match (matches entire cell content)\n- `range`: A1 notation range to search within\n- `case_sensitive`: Boolean for case-sensitive matching (default false)\n- `filter.range`: Grid range with sheet_id for basic filter\n- `filter.criteria`: Column-based filter conditions\n- `filter.sortSpecs`: Sort specifications\n\n**Pitfalls**:\n- `GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW` matches entire cell content, not substrings\n- Sheet names with spaces must be single-quoted in ranges (e.g., \"'My Sheet'!A:Z\")\n- Bare sheet names without ranges are not supported for lookup; always specify a range\n\n### 4. Upsert Rows by Key\n\n**When to use**: User wants to update existing rows or insert new ones based on a unique key column\n\n**Tool sequence**:\n1. `GOOGLESHEETS_UPSERT_ROWS` - Update matching rows or append new ones [Required]\n\n**Key parameters**:\n- `spreadsheetId`: Target spreadsheet ID\n- `sheetName`: Tab name\n- `keyColumn`: Column header name used as unique identifier (e.g., 'Email', 'SKU')\n- `headers`: List of column names for the data\n- `rows`: 2D array of data rows\n- `strictMode`: Error on mismatched column counts (default true)\n\n**Pitfalls**:\n- `keyColumn` must be an actual header name, NOT a column letter (e.g., 'Email' not 'A')\n- If `headers` is NOT provided, first row of `rows` is treated as headers\n- With `strictMode=true`, rows with more values than headers cause an error\n- Auto-adds missing columns to the sheet\n\n### 5. Format Cells\n\n**When to use**: User wants to apply formatting (bold, colors, font size) to cells\n\n**Tool sequence**:\n1. `GOOGLESHEETS_GET_SPREADSHEET_INFO` - Get numeric sheetId for target tab [Prerequisite]\n2. `GOOGLESHEETS_FORMAT_CELL` - Apply formatting to a range [Required]\n3. `GOOGLESHEETS_UPDATE_SHEET_PROPERTIES` - Change frozen rows, column widths [Optional]\n\n**Key parameters**:\n- `spreadsheet_id`: Spreadsheet ID\n- `worksheet_id`: Numeric sheetId (NOT tab name); get from GET_SPREADSHEET_INFO\n- `range`: A1 notation (e.g., 'A1:F1') - preferred over index fields\n- `bold`, `italic`, `underline`, `strikethrough`: Boolean formatting options\n- `red`, `green`, `blue`: Background color as 0.0-1.0 floats (NOT 0-255 ints)\n- `fontSize`: Font size in points\n\n**Pitfalls**:\n- Requires numeric `worksheet_id`, not tab title; get from spreadsheet metadata\n- Color channels are 0-1 floats (e.g., 1.0 for full red), NOT 0-255 integers\n- Responses may return empty reply objects ([{}]); verify formatting via readback\n- Format one range per call; batch formatting requires separate calls\n\n## Common Patterns\n\n### ID Resolution\n- **Spreadsheet name -> ID**: `GOOGLESHEETS_SEARCH_SPREADSHEETS` with `query`\n- **Tab name -> sheetId**: `GOOGLESHEETS_GET_SPREADSHEET_INFO`, extract from sheets metadata\n- **Tab existence check**: `GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE`\n\n### Rate Limits\nGoogle Sheets enforces strict rate limits:\n- Max 60 reads/minute and 60 writes/minute\n- Exceeding limits causes errors; batch operations where possible\n- Use `GOOGLESHEETS_BATCH_GET` and `GOOGLESHEETS_BATCH_UPDATE` for efficiency\n\n### Data Patterns\n- Always read before writing to understand existing layout\n- Use `GOOGLESHEETS_UPSERT_ROWS` for CRM syncs, inventory updates, and dedup scenarios\n- Append mode (omit `first_cell_location`) is safest for adding new records\n- Use `GOOGLESHEETS_CLEAR_VALUES` to clear content while preserving formatting\n\n## Known Pitfalls\n\n- **Tab names**: Locale-dependent defaults; 'Sheet1' may not exist in non-English accounts\n- **Range notation**: Sheet names with spaces need single quotes in A1 notation\n- **Unbounded ranges**: Can timeout on large sheets; always specify row bounds (e.g., 'A1:Z10000')\n- **2D arrays**: All value parameters must be list-of-lists, even for single rows\n- **Color values**: Floats 0.0-1.0, not integers 0-255\n- **Formatting IDs**: `FORMAT_CELL` needs numeric sheetId, not tab title\n- **Rate limits**: 60 reads/min and 60 writes/min; batch to stay within limits\n- **Delete dimension**: `GOOGLESHEETS_DELETE_DIMENSION` is irreversible; double-check bounds\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search spreadsheets | `GOOGLESHEETS_SEARCH_SPREADSHEETS` | `query`, `search_type` |\n| Create spreadsheet | `GOOGLESHEETS_CREATE_GOOGLE_SHEET1` | `title` |\n| List tabs | `GOOGLESHEETS_GET_SHEET_NAMES` | `spreadsheet_id` |\n| Add tab | `GOOGLESHEETS_ADD_SHEET` | `spreadsheetId`, `title` |\n| Read data | `GOOGLESHEETS_BATCH_GET` | `spreadsheet_id`, `ranges` |\n| Read single range | `GOOGLESHEETS_VALUES_GET` | `spreadsheet_id`, `range` |\n| Write data | `GOOGLESHEETS_BATCH_UPDATE` | `spreadsheet_id`, `sheet_name`, `values` |\n| Update range | `GOOGLESHEETS_VALUES_UPDATE` | `spreadsheet_id`, `range`, `values` |\n| Append rows | `GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND` | `spreadsheetId`, `range`, `values` |\n| Upsert rows | `GOOGLESHEETS_UPSERT_ROWS` | `spreadsheetId`, `sheetName`, `keyColumn`, `rows` |\n| Lookup row | `GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW` | `spreadsheet_id`, `query` |\n| Format cells | `GOOGLESHEETS_FORMAT_CELL` | `spreadsheet_id`, `worksheet_id`, `range` |\n| Set filter | `GOOGLESHEETS_SET_BASIC_FILTER` | `spreadsheetId`, `filter` |\n| Clear values | `GOOGLESHEETS_CLEAR_VALUES` | `spreadsheet_id`, range |\n| Delete rows/cols | `GOOGLESHEETS_DELETE_DIMENSION` | `spreadsheet_id`, `sheet_name`, dimension |\n| Spreadsheet info | `GOOGLESHEETS_GET_SPREADSHEET_INFO` | `spreadsheet_id` |\n| Update tab props | `GOOGLESHEETS_UPDATE_SHEET_PROPERTIES` | `spreadsheetId`, properties |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["googlesheets","automation","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-googlesheets-automation","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/googlesheets-automation","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34768 github stars · SKILL.md body (10,023 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T18:51:25.145Z","embedding":null,"createdAt":"2026-04-18T21:38:14.931Z","updatedAt":"2026-04-23T18:51:25.145Z","lastSeenAt":"2026-04-23T18:51:25.145Z","tsv":"'-1':952 '-1.0':925,1152 '-255':929,961,1156 '/d':271 '/edit':273 '/mcp':97 '0':928,951,960,1155 '0.0':924,1151 '000':376 '1':117,164,187,419,522,573,728,850 '1.0':955 '10':375 '2':129,199,397,429,586,862 '2d':296,357,769,1133 '3':137,213,438,551,597,872 '4':152,225,450,606,702 '403':546 '5':238,460,831 '6':248 '60':1023,1026,1169,1172 'a1':275,280,311,627,902,905,1117,1131 'access':550 'account':548,1106 'action':1355 'activ':68,142,157 'actual':787 'ad':1077 'add':94,111,431,433,825,1220,1223 'alphanumer':264 'altern':247,259,596 'alway':79,282,381,698,1048,1126 'api':107 'append':235,252,253,315,386,488,736,1068,1263,1268 'appli':22,566,591,840,866 'applic':1349 'array':277,297,301,349,358,770,1134 'ask':1393 'auth':146 'auto':487,824 'auto-add':823 'auto-append':486 'autom':3,4,30,34 'avail':67,122 'background':921 'bare':688 'base':655,720 'basic':589,600,650,1304 'batch':215,227,351,608,978,1032,1038,1042,1174,1230,1247 'blue':920 'bold':842,911 'boolean':635,915 'bound':284,382,1129,1189 'boundari':1401 'call':80,130,977,982 'case':291,326,633,638 'case-insensit':290 'case-sensit':637 'caus':379,535,820,1030 'cell':46,306,309,583,624,668,833,847,865,1072,1160,1291,1294 'chang':877 'channel':949 'check':466,1008,1188 'clarif':1395 'clear':599,1082,1085,1308,1311,1368 'client':104 'color':447,843,922,948,1148 'column':654,725,750,763,778,792,827,880 'column-bas':653 'common':983 'complet':149 'composio':17,53 'condit':657 'configur':105 'confirm':124,153 'connect':63,71,75,133,139,154 'content':625,669,1086 'core':162 'count':499,779 'creat':398,408,421,424,530,1205,1208 'criteria':1404 'crm':1061 'current':87 'data':19,40,168,176,180,218,230,570,767,772,1046,1228,1245 'dedup':1066 'default':494,511,641,780,1097 'delet':1179,1182,1316,1319 'depend':517,1096 'describ':1356,1372 'detect':389 'dimens':1180,1183,1320,1325 'doubl':1187 'double-check':1186 'e.g':278,683,757,794,904,954,1130 'effici':1045 'email':758,795 'empti':338,348,966 'end':256 'endpoint':113 'enforc':1018 'english':520,1105 'enter':318 'entir':623,667 'enumer':204 'environ':1384 'environment-specif':1383 'error':333,539,775,822,1031 'even':362,1144 'exact':582,617 'exceed':1028 'execut':1351 'exist':330,471,493,603,714,1007,1054,1101 'expert':1389 'extract':1002 'f1':906 'fals':642 'field':910 'filter':11,47,554,567,590,601,604,611,651,656,1301,1305,1307 'filter.criteria':652 'filter.range':643 'filter.sortspecs':658 'filter/sort':592 'find':191,462,562,578,1010 'first':84,305,579,803,1071 'float':926,953,1150 'follow':143,387 'font':844,932 'fontsiz':931 'forceuniqu':485 'format':10,23,45,832,841,864,867,916,970,973,979,1089,1157,1159,1290,1293 'found':337 'frozen':500,878 'full':456,957 'get':86,91,201,216,452,455,541,609,852,855,896,898,944,999,1039,1215,1231,1240,1329 'googl':5,28,35,55,69,150,183,422,1016,1209 'googlesheet':2,78,136,188,200,214,226,239,249,350,420,430,439,451,461,540,574,587,598,607,662,729,851,863,873,990,998,1009,1037,1041,1057,1081,1181,1199,1207,1214,1222,1229,1238,1246,1256,1265,1274,1283,1292,1302,1310,1318,1328,1337 'googlesheets-autom':1 'green':919 'grid':644 'header':751,760,788,799,810,819 'hide':444 'high':538 'hoja':521 'id':196,263,265,484,648,745,886,888,890,940,985,989,1158,1219,1233,1242,1250,1260,1288,1296,1298,1314,1322,1333 'identifi':756 'includ':38 'index':528,536,909 'info':454,543,854,900,1001,1327,1331 'inner':300 'input':1398 'insensit':292 'insert':717 'int':930 'integ':962,1154 'inventori':1063 'irrevers':1185 'ital':912 'key':108,260,473,614,706,724,740,883,1195 'keycolumn':749,783,1279 'known':1090 'lack':549 'larg':1124 'layout':1055 'letter':793 'like':369 'limit':385,1015,1021,1029,1168,1178,1360 'link':147 'list':359,361,761,1141,1143,1212 'list-of-list':1140 'liter':322 'local':516,1095 'locale-depend':515,1094 'locat':307,1073 'lookup':575,663,697,1281,1284 'manag':12,20,41,74,132,400,413 'match':293,581,621,622,640,666,733,1369 'max':1022 'may':340,378,964,1099 'mcp':16,33,60,93,100,120 'metadata':458,947,1005 'mis':325 'mis-cas':324 'mismatch':777 'miss':346,826,1406 'mode':1069 'multipl':531 'must':61,354,505,676,784,1138 'name':194,203,206,287,289,332,480,492,504,513,673,690,748,752,764,789,895,988,996,1093,1110,1217,1252,1324 'need':109,1113,1161 'new':410,426,435,718,737,1078 'non':329,1104 'non-english':1103 'non-exist':328 'notat':276,312,628,903,1108,1118 'numer':856,891,938,1162 'oauth':151 'object':968 'omit':313,341,1070 'one':220,416,719,738,974 'oper':7,1033 'option':449,459,472,605,613,882,917 'output':1378 'overview':1359 'parallel':534 'param':1196 'paramet':261,474,615,741,884,1137 'pars':319 'pattern':984,1047 'per':976 'permiss':1399 'pitfal':323,502,661,782,936,1091 'placement':396 'point':935 'possibl':1035 'prefer':907 'prerequisit':58,198,212,861 'preserv':1088 'programmat':27 'prop':1336 'properti':442,876,1340,1342 'properties.gridproperties':496 'provid':802 'queri':616,994,1202,1289 'quick':1190 'quot':680,1115 'rang':223,233,246,274,285,339,368,595,626,629,645,682,692,701,870,901,975,1107,1120,1234,1237,1243,1255,1261,1270,1299,1315 'rate':1014,1020,1167 'raw':321 'read':8,165,175,217,610,1049,1227,1235 'read/write':18 'readback':972 'reading/writing':39 'reads/min':1170 'reads/minute':1024 'record':51,1079 'red':918,958 'refer':1191 'remov':602 'renam':443 'reorder':445 'repli':967 'requir':224,237,428,437,585,739,871,937,980,1397 'resolut':986 'respond':128 'respons':963 'result':612 'return':145,392,545,965 'review':1390 'right':210 'row':26,48,236,254,304,366,377,384,501,555,564,577,580,665,704,715,731,734,768,773,804,806,814,879,1059,1128,1147,1264,1273,1276,1280,1282,1286 'row/column':498 'rows/cols':1317 'rube':15,32,59,64,73,81,92,119,125,131 'rube.app':96 'rube.app/mcp':95 'run':159 'safest':1075 'safeti':1400 'scenario':1067 'schema':89 'scope':1371 'search':25,65,82,126,189,552,631,991,1197,1200,1203 'sensit':634,639 'separ':981 'sequenc':186,418,572,727,849 'server':101 'set':497,588,1300,1303 'setup':90 'sheet':6,29,36,56,70,184,202,211,286,334,373,432,441,478,503,512,532,569,647,672,685,689,830,875,1004,1017,1109,1125,1216,1224,1251,1323,1339 'sheet1':279,423,518,1098,1210 'sheetid':857,892,997,1163 'sheetnam':746,1278 'show':156 'singl':244,365,679,1114,1146,1236 'single-quot':678 'size':845,933 'skill':1347,1363 'skill-googlesheets-automation' 'sku':759 'slug':1194 'sort':659 'source-sickn33' 'space':675,1112 'spanish':524 'specif':245,469,563,660,1385 'specifi':699,1127 'spreadsheet':13,42,190,192,250,262,268,401,411,427,453,457,476,483,510,542,576,664,744,853,885,887,899,946,987,992,1000,1198,1201,1206,1218,1232,1241,1249,1259,1266,1285,1287,1295,1313,1321,1326,1330,1332 'spreadsheetid':481,742,1225,1269,1277,1306,1341 'start':308 'status':155 'stay':1176 'stop':1391 'strict':1019 'strictmod':774,812 'strikethrough':914 'substitut':1381 'substr':671 'success':1403 'suffix':489 'support':294,695 'sync':1062 'tab':21,44,205,288,331,414,448,470,479,491,747,860,894,942,995,1006,1092,1165,1213,1221,1335 'tab/worksheet':436 'tabl':258 'tablerang':390 'target':208,482,743,859 'task':1192,1367 'test':1387 'text':618 'timeout':380,1122 'titl':465,475,943,1013,1166,1211,1226 'tool':66,83,88,127,185,417,571,726,848,1193 'toolkit':57,77,135 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'treat':345,808,1376 'true':495,781,813 'type':1204 'unbound':367,1119 'underlin':913 'understand':1053 'uniqu':507,723,755 'unknown':197 'updat':228,241,242,352,440,713,732,874,1043,1064,1248,1254,1258,1334,1338 'updatedrang':393 'upsert':50,703,730,1058,1272,1275 'url':269 'use':171,283,391,404,527,558,709,753,836,1036,1056,1080,1345,1361 'user':172,317,405,559,710,837 'valid':1386 'valu':240,251,295,344,353,584,619,817,1083,1136,1149,1239,1253,1257,1262,1267,1271,1309,1312 'valueinputopt':316 'valuerang':342 'verifi':118,395,969 'via':14,31,72,971 'want':173,406,560,711,838 'width':881 'within':415,508,632,1177 'without':691 'work':116 'workflow':37,161,163,1353 'worksheet':463,889,939,1011,1297 'write':9,167,179,229,1051,1244 'writes/min':1173 'writes/minute':1027 'x':335 'z':371,687 'z1000':281 'z10000':1132","prices":[{"id":"f39007c4-ac85-4327-9d08-b845faaf75c1","listingId":"eaebdc1a-3dac-44ef-916a-09ee57f16f55","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:38:14.931Z"}],"sources":[{"listingId":"eaebdc1a-3dac-44ef-916a-09ee57f16f55","source":"github","sourceId":"sickn33/antigravity-awesome-skills/googlesheets-automation","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/googlesheets-automation","isPrimary":false,"firstSeenAt":"2026-04-18T21:38:14.931Z","lastSeenAt":"2026-04-23T18:51:25.145Z"}],"details":{"listingId":"eaebdc1a-3dac-44ef-916a-09ee57f16f55","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"googlesheets-automation","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34768,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-23T06:41:03Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"08d866949825c566a307e3d0ce863643c24932b7","skill_md_path":"skills/googlesheets-automation/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/googlesheets-automation"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"googlesheets-automation","description":"Automate Google Sheets operations (read, write, format, filter, manage spreadsheets) via Rube MCP (Composio). Read/write data, manage tabs, apply formatting, and search rows programmatically."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/googlesheets-automation"},"updatedAt":"2026-04-23T18:51:25.145Z"}}