@grant gerekli bir parametre değil sen girmezsen otomatik algılıyor zaten,
@grant a girilen şey sadece üst düzey bir ayrıcalık için izin isteği gibi düşünebilirsin.

yani koddan @grant i silsen bişey fark etmicek grant lık bi olay yok

// ==UserScript== 
// @name        Grant None Example, With Shim 
// @include     http://www.example.com/* 
// @require     https://gist.github.com/raw/3123124/grant-none-shim.user.js 
// ==/UserScript== 

var counter = GM_getValue('counter', 0); 
console.log('This script has been run ' + counter + ' times.'); 
GM_setValue('counter', ++counter);
GM_getValue
GM_setValue

olayı da şu


	if(!GM_getValue)
	{
		function GM_getValue(key,defaultVal)
		{
			return localStorage.getItem(key);
		}

		function GM_setValue(key,value)
		{
			localStorage.setItem(key, value);
		}

		function GM_deleteValue(value)
		{
		localStorage.removeItem(value);
		}
	}